Releases: Kozea/WeasyPrint
Releases · Kozea/WeasyPrint
v63.1
Dependencies
- #2297: Remove upper bounds for dependencies
Bug fixes
- #2300, #2292: Don’t avoid floats for flex items
- #2301, #2293: Include floats in calculation of minimum cell height
- #2303, #2302: Set alpha even when current color channels didn’t change
- #2306: Don’t try to increase column width when there’s no extra width
- #2304: Don’t forget skip stack when drawing flex items
- #2316: Don’t crash with SVG symbols
- #2320: Fix currentcolor detection when parsing gradient color stops
- #2322, #2289: Don’t add DLL directories when using Windows executable
- #2323, #2305: Fix different rendering test
Performance
- #2319: Fix memory leaks
Documentation
- #2299: Update install instructions for Alpine
- #2321: Add example invocation of WeasyPrint on the "Contribute" page
Contributors
- Guillaume Ayoub
- Jó Ágila Bitsch
- Lucie Anglade
- Alexander Gitter
- Luke Cousins
Backers and sponsors
- Spacinov
- Kobalt
- Grip Angebotssoftware
- Syslifters
- Manuel Barkhau
- SimonSoft
- Menutech
- KontextWork
- Simon Sapin
- TrainingSparkle
- Healthchecks.io
- Hammerbacher
- Advance Insight
- Docraptor
- Method B
- FieldHub
- Yanal-Yvez Fargialla
- Morntag
- Xavid
v63.0
Read about this release on our blog.
Dependencies
- Python 3.13 is now supported
- pydyf 0.11.0+ is now needed
- tinycss2 1.4.0+ is now needed
- tinyhtml5 2.0.0+ is now needed, instead of html5lib
Features
- #2252, #895: Handle page groups, with financial support from Code & Co.
- #1630, #2286: Support CSS Color Level 4
- #2192: Add PDF variant for debugging purpose
- #2208: Support submit inputs in PDF forms
- #2139: Support
mask-border-*
properties - #1831, #2143: Support radio inputs in PDF forms
Bug fixes
- #2262: Avoid integer overflows when converting units from/to doubles
- #2260: Avoid float collision with box establishing formatting context
- #2240, #2242: Handle
svg
tags with no size - #2231, #1171, #2222, #1208: Fix several problems related to
flex-direction: column
- #2239: Don’t fail when SVG markers are undefined references
- #2230, #2238: Set explicit flags when loading DLLs on Windows
- #2228, #1942: Store original and PDF stream images in different cache slots
- #2234: Apply stylesheet and other basic operations to SVG root tag
- #2054, #2233: Keep auto margins on flex layout boxes
- #1883: Don’t crash with empty list marker strings
- #2216: Fix vertical alignment of out-of-flow elements in tables
- #996, #2219: Don’t ignore absolutely positioned elements inside flex boxes
- #2217: Don’t crash with
normal
column gaps - #1817: Don’t assume that lines break after spaces
- #1868: Don’t break rows with atomic cells
- #2166: Don’t display bottom border on cells in split rows
- 61852c4: Capture fontTools logs when subsetting fonts
- #2190: Don’t use a pattern when drawing backgrounds for no-repeat background images
- #2185: Check that Harfbuzz version is at least 4.1.0 to subset fonts
- #2180: Store width for all glyphs when font is not subset
- #2183: Respect
break-inside: avoid
for flex items - #2055, #2058: Fix right-to-left tables with collapsed borders
- #2179, #1128: Handle buggy Adobe Photoshop CMYK JPEGs
- #2175: Don’t compress PDF metadata for PDF/A-1
- #2174: Fix extra width distribution for auto table layout
Performance
- #1155: Improve rendering speed for large colspan values
- #2120, #2178: Use Harfbuzz to subset fonts by default
Documentation
- #2282, #2284: Simplify Alpine install instructions
- #2254: Add warning about antivirus false detection
- #2220: Add extra information to debug logs
- #2211: Fix link to samples
- #2195: Update cache argument documentation
- #2105, #2151: Use MSYS2 instead of GTK+3 for Windows
Contributors
- Guillaume Ayoub
- David Huggins-Daines
- Xavid Pretzer
- Yann Trividic
- Kevin Kays
- Alejandro Avilés
- Gianluca Teti
- Gregory Goodson
- Lucie Anglade
- Roman Sirokov
Backers and sponsors
- Spacinov
- Kobalt
- Grip Angebotssoftware
- Syslifters
- Manuel Barkhau
- SimonSoft
- Menutech
- KontextWork
- Simon Sapin
- TrainingSparkle
- Healthchecks.io
- Hammerbacher
- Advance Insight
- Docraptor
- Method B
- FieldHub
- Yanal-Yvez Fargialla
- Morntag
- Xavid
v62.3
Bug fixes
- #2174: Fix extra width distribution for auto table layout
- #2175: Don’t compress PDF metadata for PDF/A-1
- 61f8bb3: Set default PDF variant values in options before generating PDF
- 2c4351e: Avoid PDF artifacts when drawing 0-width borders
- d9d7f62: Don’t duplicate column when container is split on multiple pages
- 4617b94: Don’t set default Fontconfig values for unset properties
- 4c81663: Fix layout when all footnotes are removed from the footnote area
- #2184: Make items overflowing grid wrap to the next row/column
- #2187: Don’t append useless tracks when grid elements are positioned
Contributors
- Guillaume Ayoub
Backers and sponsors
- Spacinov
- Kobalt
- Grip Angebotssoftware
- Manuel Barkhau
- SimonSoft
- Menutech
- KontextWork
- Simon Sapin
- René Fritz
- TrainingSparkle
- Healthchecks.io
- Hammerbacher
- Docraptor
- Yanal-Yvez Fargialla
- Douwe van Loenen
- Morntag
- Xavid
v62.2
Features
Bug fixes
- #2167: Fix space added by CSS gap at the end
- #2134: Remove absolute placeholders from discarded content
- #2154: Don’t crash when grid items have auto margins
- 8cdd66f: Fix CSS nesting for nested selectors with comma
- 3359db5: Fix and test grid shorthand
- 82deda4: Fix wrong resume_at for split floats
- ff2acf1: Ensure that gradient size is positive to please some PDF readers
Contributors
- Guillaume Ayoub
Backers and sponsors
- Spacinov
- Kobalt
- Grip Angebotssoftware
- Manuel Barkhau
- SimonSoft
- Menutech
- KontextWork
- Simon Sapin
- René Fritz
- TrainingSparkle
- Healthchecks.io
- Hammerbacher
- Docraptor
- Yanal-Yvez Fargialla
- Douwe van Loenen
- Morntag
- Xavid
v62.1
Bug fixes
- #2144, #2149: Avoid broken fonts when generating multiple documents
- c10c689: Display at least one grid row on empty pages
- #2146: Don’t crash when flex container’s parent’s height is auto
Contributors
- Guillaume Ayoub
- Claudius Ellsel
Backers and sponsors
- Spacinov
- Kobalt
- Grip Angebotssoftware
- Manuel Barkhau
- SimonSoft
- Menutech
- KontextWork
- Simon Sapin
- René Fritz
- TrainingSparkle
- Healthchecks.io
- Docraptor
- Yanal-Yvez Fargialla
- Douwe van Loenen
- Morntag
- Xavid
v62.0
Read about this release on our blog.
Dependencies
- Python 3.9+ is now needed, Python 3.7 and 3.8 are not supported anymore
- pydyf 0.10.0+ is now needed
- tinycss2 1.3.0+ is now needed
Features
- #543, #2121: Support CSS Grid layout
- #2124, #2125: Support border-image-* properties
- #2084, #2077: Support CSS nesting
- #2101: Support HTML maxlength attribute for form fields
- #2095: Apply overflow to replaced boxes
- 245e4f5: Add support of PDF/A-?u
Bug fixes
- #2136: Don’t clip aligned text in SVG
- #2135: Allow column-direction flex containers to use percentage-based heights
- #2128: Don’t crash when a FontConfig object is destroyed early
- #2079: Fix executable file for some Windows versions
- #2131: Fix alpha for images before/after transparent text
- #2111: Handle auto and none values for CSS quotes property
- #2103: Don’t crash with overconstrained columns
- #2100: Fix rounding error when detecting overflows
- #2093, #2097, #2094: Mark use of md5() and sha1() as not for security
- #1956, #2087: Use CSS table module level 3 to compute widths
- #2086: Fix selects with empty values displaying None
- #1112, #2082, #2085: Fix computation for outer min-content width for table cells
- 016bd81: Fix many different bugs with SVG markers
Performance
- #2130: Cache font key instead of whole font content
Documentation
- #2108: Update documentation about CSS leader() function
Contributors
- Guillaume Ayoub
- Lucie Anglade
- Xavid Pretzer
- kygoh
- Germain Gueutier
- Vagner José Nicolodi
Backers and sponsors:
- Spacinov
- Kobalt
- Grip Angebotssoftware
- Manuel Barkhau
- SimonSoft
- Menutech
- KontextWork
- Simon Sapin
- René Fritz
- TrainingSparkle
- Healthchecks.io
- Docraptor
- Yanal-Yvez Fargialla
- Douwe van Loenen
- Morntag
- Xavid
v61.2
This is a security update.
We strongly recommend to upgrade WeasyPrint to the latest version if you use WeasyPrint 61.0 or 61.1. Older versions are not impacted.
Security
- Always use URL fetcher for attachments
Contributors
- Guillaume Ayoub
- Ilia Novoselov
Backers and sponsors
- Spacinov
- Kobalt
- Grip Angebotssoftware
- Manuel Barkhau
- SimonSoft
- Menutech
- KontextWork
- René Fritz
- Simon Sapin
- Arcanite
- TrainingSparkle
- Healthchecks.io
- Hammerbacher
- Docraptor
- Yanal-Yvez Fargialla
- Morntag
- NBCO
v61.1
Released on 2024-02-26.
Bug fixes
- #2075: Use default value when variable is not defined
- #2070: Don’t crash when rendering SVGs with non-text a children
- Don’t crash when SVG file can’t be rendered
Documentation
- #2067: Suggest "dnf" instead of "yum" to install Fedora packages
- Improve documentation for Windows
- Fix required version of TinyCSS2
Contributors
- Guillaume Ayoub
- Felix Schwarz
- Lucie Anglade
Backers and sponsors
- Spacinov
- Kobalt
- Grip Angebotssoftware
- Manuel Barkhau
- SimonSoft
- Menutech
- KontextWork
- René Fritz
- Simon Sapin
- Arcanite
- TrainingSparkle
- Healthchecks.io
- Hammerbacher
- Docraptor
- Yanal-Yvez Fargialla
- Morntag
- NBCO
v61.0
Read about this release on our blog.
Python API
DocumentMetadata.attachments
is now a list ofAttachment
objects, not
a list of(url, description)
tuples.
New features
- #1219, #2017: Support var() in shorthand and multiple-value functions
- #1986: Support percentages for opacity
- #2050: Build executable file for Windows
- #2000: Support select fields
- #1993: Handle background-attachment: fixed to cover the whole page
- #2023, #2022: Allow text-based file objects for HTML and CSS classes
- #2014: Remove warnings for PDF/A and PDF/UA compatibility
Bug fixes
- #2052, #1869: Handle attachments for PDF/A documents
- #2013, #2051: Apply margin to running tables
- #1278, #1884: Draw collapsed borders of running tables
- #2029: Fix page counter in non-root absolute boxes
- #2043: Fix text-anchor on SVG tspan elements
- #1968, #2039: Use cell's border-height to calculate table row height
- #2030: Ensure that bounding box is set to invisible text tags
- #2040, #2041: Don’t crash on malformed URLs
- #2026: Don’t break pages when fixed-height elements don’t overflow page
- #2038: Don’t mix original streams when drawing transparent text
- #2016: Avoid duplication when breaking out-of-flow boxes
- #2012: Don’t crash when CSS properties have no value
- #2010, #1287: Fix many corner cases with CSS variables
- #1996: Don’t crash when drawing groove/ridge collapsed borders
- #1982: Fix SVG markers size, position and drawing
Contributors
- Guillaume Ayoub
- kygoh
- Lucie Anglade
- Timo Ramsauer
- Alexander Gitter
- Michael Lisitsa
- Vagner José Nicolodi
- Manolis Stamatogiannakis
- Pascal de Bruijn
- Viktor Shevtsov
- Eduardo Gonzalez
- Kesara Rathnayake
Backers and sponsors
- Spacinov
- Kobalt
- Grip Angebotssoftware
- Manuel Barkhau
- SimonSoft
- Menutech
- KontextWork
- René Fritz
- Simon Sapin
- Arcanite
- TrainingSparkle
- Healthchecks.io
- Hammerbacher
- Docraptor
- Yanal-Yvez Fargialla
- Morntag
- NBCO
v60.2
Bug fixes
- #1982: Fix SVG markers size, position and drawing
- 23cfc77: Draw background behind absolutely positioned replaced boxes
- fe2f0c6: Don’t crash with bitmap fonts with no "glyf" table
- 1460522: Improve SVG text-anchor attribute
Contributors
- Guillaume Ayoub
Backers and sponsors
- Spacinov
- Kobalt
- Grip Angebotssoftware
- Manuel Barkhau
- SimonSoft
- Menutech
- KontextWork
- NCC Group
- René Fritz
- Nicola Auchmuty
- Syslifters
- Hammerbacher
- TrainingSparkle
- Daniel Kucharski
- Healthchecks.io
- Yanal-Yvez Fargialla
- WakaTime
- Paheko
- Synapsium
- DocRaptor