Read about this release [on our blog](https://www.courtbouillon.org/blog/00049-weasyprint-61).
Python API
* `DocumentMetadata.attachments` is now a list of `Attachment` 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