Repository navigation
Update dependency fonttools to v4.68.0 - #688
renovate[bot] wants to merge 1 commit into
Conversation
|
View changes in DiffLens |
5 similar comments
|
View changes in DiffLens |
|
View changes in DiffLens |
|
View changes in DiffLens |
|
View changes in DiffLens |
|
View changes in DiffLens |
d04ceb6 to
817dcdb
Compare
|
Important Review skippedBot user detected. To trigger a single review, invoke the
|
|
View changes in DiffLens |
4 similar comments
|
View changes in DiffLens |
|
View changes in DiffLens |
|
View changes in DiffLens |
|
View changes in DiffLens |
|
View changes in DiffLens |
817dcdb to
512f385
Compare
|
View changes in DiffLens |
1 similar comment
|
View changes in DiffLens |
512f385 to
93d9c20
Compare
|
View changes in DiffLens |
93d9c20 to
2c6f462
Compare
|
View changes in DiffLens |
1 similar comment
|
View changes in DiffLens |
2c6f462 to
8a5555d
Compare
|
View changes in DiffLens |
|
View changes in DiffLens |
8a5555d to
f057e70
Compare
|
View changes in DiffLens |
1 similar comment
|
View changes in DiffLens |
Vulnerable Libraries (5)
More info on how to fix Vulnerable Libraries in Python. 👉 Go to the dashboard for detailed results. 📥 Happy? Share your feedback with us. |
Micro-Learning Topic: Vulnerable library (Detected by phrase)Matched on "Vulnerable Libraries"Use of vulnerable components will introduce weaknesses into the application. Components with published vulnerabilities will allow easy exploitation as resources will often be available to automate the process. Try a challenge in Secure Code Warrior |
|
View changes in DiffLens |
1 similar comment
|
View changes in DiffLens |
This PR contains the following updates:
==4.63.0→==4.68.0Release Notes
fonttools/fonttools (fonttools)
v4.68.0Compare Source
"and\when writing names back out withasFea()inFeatureNameStatement,STATNameStatementandCVParametersNameStatement(#4321).MATHlengths that are notMathValueRecords (DelimitedSubFormulaMinHeight,DisplayOperatorMinHeight,MinConnectorOverlap, etc.) (#4327).vsindexfrom the Private DICT when decompiling, specializing and instancing charstrings, and fixprogramToCommandsmiscounting operands when severalblendoperators precede the first stem or moveto (#4337, #4339).blendgroup (#4346).FeatureLibErrorinstead of looping forever on an unclosedOS/2,BASEorSTATtable block (#4347).public.fontInfokeys, merge them with the root-level font info instead of replacing it (#4336, #4340).FeatureVariationsconditions of a format other than the supported axis-range one, instead of silently dropping them (#4348)..zipwhen writing a.ufozor other non-.ziparchive (#4342).getCoordinatesnow raisesTTLibErrorpast 65535 composite points (#4325).GLYF,GVAR,HMTX, GSUB/GPOS extended layout,FeatureVariations1.1, TTC 1.1/2.1,DMAP), attLib.beyond64kmodule and CLI, and support inFontBuilder,merge,subset,instancer,qu2cu,removeOverlapsandscaleUpem(#4097, #2678).addVarComponent()locations sparse, passingRESET_UNSPECIFIED_AXESvia a new keyword-onlyresetUnspecifiedAxespen argument (#4349).brotli>= 1.2.1 andbrotlicffi>= 1.2.1.0, which fix GHSA-9v8h-qqgm-4m35 (#4365, #4370).AttributeError: ElidedFallbackNameIDwhen updating font names of a font with a version 1.0STATtable; fall back to the subfamily name (#2933, #4371).v4.67.0Compare Source
allow_decreasingargument tomodels.normalizeValue(#3970, #4217, #4243).<axis-subset>are taken from the parent axis, as the spec says (#4205).DesignSpaceDocument.normalize()for mapped axes: axis bounds and rule conditions are now normalized from their original values (#4218).splitInterpolableandsplitVariableFontsnow warn when a source or instance is dropped because it lies outside the document's own axes, instead of silently discarding it (#4244).VORG, and use OpenType rounding for instanced advances and vertical origins (#4221).Devicecorrections in GDEF, BASE, GPOS and JSTF instead of asserting on them (#4290).VariationIndexdevices when instancing, subsetting the GDEF store or optimizing it (#4288).ValueError: Missing required table fvarfromvarLib.mutatorand the instancer CLI on a static font, instead of a bareKeyError(#3751, #4300).rvrn, also shift lookup indices inside existing FeatureVariations (#4233). Handle nullConditionSetandFeatureTableSubstitutionoffsets when building, subsetting and instancing (#4234, #4235). KeepFeatureTableSubstitutionrecords sorted after merging new ones into an existing record (#4248).size,ssXX,cvXX) in FeatureVariations alternate feature tables, which failed to compile and round-trip (#3623, #4278).SinglePosandPairPosarrays during recursive decompilation, soreorderGlyphs()on a lazy font no longer corrupts or asserts on them (#4231, #4232).SparseVarRegionList.RegionCountis uint32, sparse axes use Offset32 andMultiVarDataitems are stored in an INDEX. VARC fonts built with earlier fontTools versions must be rebuilt (#4219).conditionIndex(#4237), set the implicitscaleYwhen importing XML (#4238), report the font's current coordinates for components that reset unspecified axes (#4239), and keep inherited coordinates when drawing CFF2 VARC components (#4236).buildMultiVarDataaccepts flattened per-region vector tuples (#4245).offSizeon read, raisingTTLibErrorinstead of allocating huge lazy lists (#4220).OPTIMIZE_FONT_SPEEDis set (#4241).VORGorigins (#4222); fix VARC scaling for static fonts and condition variations (#4223); don't mutate the shared default CFFFontMatrix(#4251, #4252)..notdef(#4215). Formats 2 and 4 now reject glyph IDs above 65535 instead of wrapping them (#4226). Split format 14 default UVS ranges longer than 256 codepoints (#4229). Empty format 12 and 13 subtables round-trip (#4246).TTGlyphPointPenacross contour starts (#4224).Glyph.drawPoints()now raisesNotImplementedErrorfor an all-off-curve cubic contour, which the point pen protocol cannot express (#3191, #4225).RoundingPenpasses the all-off-curveNonesentinel through (#4311, #4312).Vendorwith spaces (#4259).FeatureLibErrorwith a location, instead of a bare Python error, for: a BASE script list without a matching tag list (#4263), aUnicodeRangebit outside 0-127 (#4266), a name string that cannot be decoded (#4267), a STAT axislocationwith no or too many values (#4268), and a non-ASCII OS/2Vendor(#4269).eswas mapped to Mac Estonian (#3733, #4256).getDebugNameprefers the Windows English name over the Mac one (#3969, #4273).numGlyphsset to 0 (#3060, #4274).numRecsandnumRatioswhen compiling (#4293).Silftable that was decompiled from binary (#4294).minorVersionwhen copying flavor data (#4249, #4250)..widthis correct before drawing (#3964, #4260).--jsonoutput with SciPy (#3870, #4276).ValueErrorinstead ofIndexErroron a truncated path command (#4254).Tag.__ne__returnsNotImplementedfor unsupported types (#4305, #4306).hashdictrejects in-place union (|=) (#4313, #4314).WriteZipFS.close()can be called more than once (#4309, #4310).v4.66.1Compare Source
makeNames=True(asvarLib.build_manydoes), family and style names set explicitly on an instance now take precedence over the ones computed from the STAT labels, in all languages, and a PostScript name is no longer made up from the labels for an instance that has its own style name (#3131, #4206, #4208).idRangeOffsetpoints outsideglyphIndexArraynow raisesTTLibError. A negative index used to silently map the code point to the wrong glyph, and one past the end raised a bareAssertionError(#4209).struct.error(#4210).v4.66.0Compare Source
fontTools.misc.enumToolsnow only re-exportsenum.StrEnumand is deprecated. Explicitly test and declare support for Python 3.15 (#4183, #4196).unicodedata218.0.0 when it is used (#4192, #4197).languagestatements listing multiple language tags, e.g.language AZE CRT;, as Glyphs does and as proposed for the spec (adobe-type-tools/feature_file_workshops#8): the following rules and lookup references are registered under every listed language.dfltcannot be combined with other tags.LanguageStatement.languageis still the first tag; all of them are in the newlanguagesattribute (#4201, #4202).script/languagepair is repeated within a feature block: the repeated statement replaced the language system's lookups with a fresh copy of the default ones (#4189).FeatureLibErrorinstead ofUnboundLocalErrorwhen aSTATtable block lacksElidedFallbackNameorElidedFallbackNameID(#3834, #4179).VarStorewhen saving. Previously the bytes compiled by an earlier save were reused, so a CFF2 variable font that was saved and then modified in place, e.g. by the instancer, was written with a staleVarStorenext to its updated charstrings (#4199).VARCfonts that omitfvarwhile retaininggvaror CFF2 variation data for component-internal axes: hidden axes are addressed by index andgvarcan compile, decompile and round-trip through TTX withoutfvar, reading the axis count from a newaxisCountelement (#4187, #4188).VARCcomponents whose condition is negated (format 5), which raisedAttributeError(#4191).VARCaxis references left stale when removing an unrelated axis, reject pinning or restricting axes referenced byVARCcomponents, and stop culling avar2 ranges for component-internal variations, which can reach outside the font-level ranges (#4190, #4193).splitQuadraticAtTandsplitCubicAtTCas well, likesplitCubicAtTsince 4.55.4 (#3742, #4194).ZeroDivisionErrorinlineLineIntersectionsfor collinear vertical lines; they are now treated as parallel like horizontal ones (#3515, #4181).pyftsubsetnow preserves the input font's flavor (WOFF, WOFF2) when--flavoris omitted, instead of writing uncompressed sfnt data under the same extension; pass--flavor=noneto force uncompressed output (#3630, #4182).unitsPerEmvalues by name, with the input values, instead of a bare assertion (#2844, #4184).DesignSpaceDocument.default, which holds aSourceDescriptor, not a source name (#2994, #4186).TTLibErrorinstead ofAssertionErrorfor inconsistent WOFF table, metadata and private-data lengths, so the checks also hold underpython -O(#4178).resolve_entities="internal"still fetched external parameter entities before lxml 6.1.3, so a crafted DTD could read local files into parsed XML content (#4195).varLib.avar.unbuildemits its designspace snippet, so a crafted font cannot inject markup (#4203).v4.65.0Compare Source
__iter__,itemsandvaluesmethods to theglyftable to make it more dict-like (#4156).<variable-font name="..."/>when deriving the output filename in thevarLibcommand line, so a designspace cannot write outside the output directory (#4168).scriptstatements. Rules following ascriptstatement that names the first declared language system no longer end up under theDFLTscript, and ascriptstatement naming the already-current script still narrows the language systems and terminates the current lookup while leaving thelookupflagalone, matching makeotf (#1824, #2522, #4169).OTLOffsetOverflowErrorinstead ofAttributeErrorso another contextual format can be tried (regression from #3439). When all formats overflow, split the ruleset in halves until it fits (#4171).v4.64.0Compare Source
IDEF[ ], like function definitions (#4093).paltby default (#4094).__setitem__membership (#4103).fixLookupOverFlows()reporting success when it had not promoted any lookup to Extension, masking unresolvable overflows.TTCollection.save(#4111).bhed,bdat,bloc, variants ofhead,EBDT,EBLCused in legacy Apple bitmap-only fonts (#4115).OS/2fsSelection/macStyle consistency againstbhedas well ashead(#4118, #4119).BASEtable (#4137).vsindexhandling ininstantiateCFF2(#4129, #4132).TTLibErrorinstead ofAssertionErrororstruct.errorwhen reading a font truncated within the table directory or a table entry (#4147, #4149).]]>terminator inside CDATA sections, so an SVG document containing it can no longer smuggle markup past a TTX round trip (#4139).(100 wght=900:120)means(wght=400:100 wght=900:120)when the wght default is 400 (#4024).TTLibErrorfor a truncated or out-of-bounds cmap subtable header (#4151).<lib>element as an empty lib instead of raisingIndexError(#4142, #4144).splitSinglePosso GPOS lookup type 1 offset overflows can be recovered by splitting the subtable (#4091, #4108).TTLibErrorinstead ofRecursionErrorwhenrecalcBounds()hits a composite-component reference cycle (#3899, #4116).Z Z) (#4122).DefaultTabletype annotations (#4126).EBSC(Embedded Bitmap Scaling) table (#4113).TypeErrorin the Cython-compiled build whenQu2CuPenpasses tuple splines (#4160)...components incontents.plist, and a crafted.ufozcould create files outside its temporary mirror (#4124).ttx -z extfileexport, preventing arbitrary file writes from untrusted fonts (#4128).XMLParserwhen lxml is used, preventing XXE file disclosure on lxml < 5.0 (#4145).VARCauxiliary data: collect and remap variation indices referenced by condition tables when subsetting theMultiVarStore, and drop theAxisIndicesList,ConditionList, andMultiVarStorewhen they end up empty (#4162).Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.