mirror of
https://github.com/Kozea/WeasyPrint.git
synced 2024-10-05 16:37:47 +03:00
403 lines
13 KiB
Plaintext
403 lines
13 KiB
Plaintext
WeasyPrint changelog
|
||
====================
|
||
|
||
Version 0.19.2
|
||
--------------
|
||
|
||
Released on 2013-06-18.
|
||
|
||
Bug fix release:
|
||
|
||
* Fix `#88 <https://github.com/Kozea/WeasyPrint/issues/88>`_:
|
||
``text-decoration: overline`` not being drawn above the text
|
||
* Bug fix: Actually draw multiple lines when multiple values are given
|
||
to ``text-decoration``.
|
||
* Use the font metrics for text decoration positioning.
|
||
* Bug fix: Don't clip the border with ``overflow: hidden``.
|
||
* Fix `#99 <https://github.com/Kozea/WeasyPrint/issues/00>`_:
|
||
Regression: JPEG images not loading with cairo 1.8.x.
|
||
|
||
|
||
Version 0.19.1
|
||
--------------
|
||
|
||
Released on 2013-04-30.
|
||
|
||
Bug fix release:
|
||
|
||
* Fix incorrect intrinsic width calculation
|
||
leading to unnecessary line breaks in floats, tables, etc.
|
||
* Tweak border painting to look better
|
||
* Fix unnecessary page break before big tables.
|
||
* Fix table row overflowing at the bottom of the page
|
||
when there are margins above the table.
|
||
* Fix ``position: fixed`` to actually repeat on every page.
|
||
* Fix `#76 <https://github.com/Kozea/WeasyPrint/issues/76>`_:
|
||
repeat ``<thead>`` and ``<tfoot>`` elements on every page,
|
||
even with table border collapsing.
|
||
|
||
|
||
Version 0.19
|
||
------------
|
||
|
||
Released on 2013-04-18.
|
||
|
||
* Add support for ``linear-gradient()`` and ``radial-gradient``
|
||
in background images.
|
||
* Add support for the ``ex`` and ``ch`` length units.
|
||
(``1ex`` is based on the font instead of being always ``0.5em`` as before.)
|
||
* Add experimental support for Level 4 hyphenation properties.
|
||
* Drop support for CFFI < 0.6 and cairocffi < 0.4.
|
||
* Many bug fixes, including:
|
||
|
||
* Fix `#54 <https://github.com/Kozea/WeasyPrint/issues/54>`_:
|
||
min/max-width/height on block-level images.
|
||
* Fix `#71 <https://github.com/Kozea/WeasyPrint/issues/71>`_:
|
||
Crash when parsing nested functional notation.
|
||
|
||
|
||
Version 0.18
|
||
------------
|
||
|
||
Released on 2013-03-30.
|
||
|
||
* Add support for Level 3 backgrounds,
|
||
including multiple background layers per element/box.
|
||
* Forward-compatibility with (future releases of) cairocffi 0.4+ and CFFI 0.6+.
|
||
* Bug fixes:
|
||
|
||
* Avoid some unnecessary line breaks
|
||
for elements sized based on their content (aka. “shrink-to-fit”)
|
||
such as floats and page headers.
|
||
* Allow page breaks between empty blocks.
|
||
* Fix `#66 <https://github.com/Kozea/WeasyPrint/issues/66>`_:
|
||
Resolve images’ auto width from non-auto height and intrinsic ratio.
|
||
* Fix `#21 <https://github.com/Kozea/WeasyPrint/issues/21>`_:
|
||
The ``data:`` URL scheme is case-insensitive.
|
||
* Fix `#53 <https://github.com/Kozea/WeasyPrint/issues/53>`_:
|
||
Crash when backtracking for ``break-before/after: avoid``.
|
||
|
||
|
||
Version 0.17.1
|
||
--------------
|
||
|
||
Released on 2013-03-18.
|
||
|
||
Bug fixes:
|
||
|
||
* Fix `#41 <https://github.com/Kozea/WeasyPrint/issues/41>`_:
|
||
GObject initialization when GDK-PixBuf is not installed.
|
||
* Fix `#42 <https://github.com/Kozea/WeasyPrint/issues/42>`_:
|
||
absolute URLs without a base URL (ie. document parsed from a string.)
|
||
* Fix some whitespace collapsing bugs.
|
||
* Fix absolutely-positioned elements inside inline elements.
|
||
* Fix URL escaping of image references from CSS.
|
||
* Fix `#49 <https://github.com/Kozea/WeasyPrint/issues/49>`_:
|
||
Division by 0 on dashed or dotted border smaller than one dot/dash.
|
||
* Fix `#44 <https://github.com/Kozea/WeasyPrint/issues/44>`_:
|
||
bad interaction of ``page-break-before/after: avoid`` and floats.
|
||
|
||
|
||
Version 0.17
|
||
------------
|
||
|
||
Released on 2013-02-27.
|
||
|
||
* Added `text hyphenation`_ with the ``-weasy-hyphens`` property.
|
||
* When a document includes JPEG images, embed them as JPEG in the PDF output.
|
||
This often results in smaller PDF file size
|
||
compared to the default *deflate* compression.
|
||
* Switched to using CFFI instead of PyGTK or PyGObject-introspection.
|
||
* Layout bug fixes:
|
||
|
||
- Correctly trim whitespace at the end of lines.
|
||
- Fix some cases with floats within inline content.
|
||
|
||
.. _text hyphenation: http://weasyprint.org/docs/features/#hyphenation
|
||
|
||
|
||
Version 0.16
|
||
------------
|
||
|
||
Released on 2012-12-13.
|
||
|
||
* Add the :obj:`zoom` parameter to :meth:`HTML.write_pdf` and
|
||
:meth:`Document.write_pdf() <weasyprint.document.Document.write_pdf>`
|
||
* Fix compatibility with old (and buggy) pycairo versions.
|
||
WeasyPrint is now tested on 1.8.8 in addition to the latest.
|
||
* Fix layout bugs related to line trailing spaces.
|
||
|
||
|
||
Version 0.15
|
||
------------
|
||
|
||
Released on 2012-10-09.
|
||
|
||
* Add a low-level API that enables painting pages individually on any
|
||
cairo surface.
|
||
* **Backward-incompatible change**: remove the :meth:`HTML.get_png_pages`
|
||
method. The new low-level API covers this functionality and more.
|
||
* Add support for the ``font-stretch`` property.
|
||
* Add support for ``@page:blank`` to select blank pages.
|
||
* New Sphinx-based and improved docs
|
||
* Bug fixes:
|
||
|
||
- Importing Pango in some PyGTK installations.
|
||
- Layout of inline-blocks with `vertical-align: top` or `bottom`.
|
||
- Do not repeat a block’s margin-top or padding-top after a page break.
|
||
- Performance problem with large tables split across many pages.
|
||
- Anchors and hyperlinks areas now follow CSS transforms.
|
||
Since PDF links have to be axis-aligned rectangles, the bounding box
|
||
is used. This may be larger than expected with rotations that are
|
||
not a multiple of 90 degrees.
|
||
|
||
|
||
Version 0.14
|
||
------------
|
||
|
||
Released on 2012-08-03.
|
||
|
||
* Add a public API to choose media type used for @media.
|
||
(It still defaults to ``print``). Thanks Chung Lu!
|
||
* Add ``--base-url`` and ``--resolution`` to the command-line API, making it
|
||
as complete as the Python one.
|
||
* Add support for the ``<base href="...">`` element in HTML.
|
||
* Add support for CSS outlines
|
||
* Switch to gdk-pixbuf instead of Pystacia for loading raster images.
|
||
* Bug fixes:
|
||
|
||
- Handling of filenames and URLs on Windows
|
||
- Unicode filenames with older version of py2cairo
|
||
- ``base_url`` now behaves as expected when set to a directory name.
|
||
- Make some tests more robust
|
||
|
||
|
||
Version 0.13
|
||
------------
|
||
|
||
Released on 2012-07-23.
|
||
|
||
* Add support for PyGTK, as an alternative to PyGObject + introspection.
|
||
This should make WeasyPrint easier to run on platforms that not not have
|
||
packages for PyGObject 3.x yet.
|
||
* Bug fix: crash in PDF outlines for some malformed HTML documents
|
||
|
||
|
||
Version 0.12
|
||
------------
|
||
|
||
Released on 2012-07-19.
|
||
|
||
* Add support for collapsed borders on tables. This is currently incompatible
|
||
with repeating header and footer row groups on each page: headers and footers
|
||
are treated as normal row groups on table with ``border-collapse: collapse``.
|
||
* Add ``url_fetcher`` to the public API. This enables users to hook into
|
||
WeasyPrint for fetching linked stylesheets or images, eg. to generate them
|
||
on the fly without going through the network.
|
||
This enables the creation of `Flask-WeasyPrint
|
||
<http://packages.python.org/Flask-WeasyPrint/>`_.
|
||
|
||
|
||
Version 0.11
|
||
------------
|
||
|
||
Released on 2012-07-04.
|
||
|
||
* Add support for floats and clear.
|
||
Together with various bug fixes, this enables WeasyPrint to pass the Acid2
|
||
test! Acid2 is now part of our automated test suite.
|
||
* Add support for the width, min-width, max-width, height, min-height and
|
||
max-height properties in @page. The size property is now the size of the
|
||
page’s containing block.
|
||
* Switch the Variable Dimension rules to `the new proposal
|
||
<https://github.com/SimonSapin/css/blob/master/margin-boxes-variable-dimension>`_.
|
||
The previous implementation was broken in many cases.
|
||
* The ``image-rendering``, ``transform``, ``transform-origin`` and ``size``
|
||
properties are now unprefixed. The prefixed form (eg. -weasy-size) is ignored
|
||
but gives a specific warning.
|
||
|
||
|
||
Version 0.10
|
||
------------
|
||
|
||
Released on 2012-06-25.
|
||
|
||
* Add ``get_png_pages()`` to the public API. It returns each page as
|
||
a separate PNG image.
|
||
* Add a ``resolution`` parameter for PNG.
|
||
* Add *WeasyPrint Navigator*, a web application that shows WeasyPrint’s
|
||
output with clickable links. Yes, that’s a browser in your browser.
|
||
Start it with ``python -m weasyprint.navigator``
|
||
* Add support for `vertical-align: top` and `vertical-align: bottom`
|
||
* Add support for `page-break-before: avoid` and `page-break-after: avoid`
|
||
* Bug fixes
|
||
|
||
|
||
Version 0.9
|
||
-----------
|
||
|
||
Released on 2012-06-04.
|
||
|
||
* Relative, absolute and fixed positioning
|
||
* Proper painting order (z-index)
|
||
* In PDF: support for internal and external hyperlinks as well as bookmarks.
|
||
* Added the ``tree`` parameter to the ``HTML`` class: accepts a parsed lxml
|
||
object.
|
||
* Bug fixes, including many crashes.
|
||
|
||
Bookmarks can be controlled by the ``-weasy-bookmark-level`` and
|
||
``-weasy-bookmark-label`` properties, as described in `CSS Generated Content
|
||
for Paged Media Module <http://dev.w3.org/csswg/css3-gcpm/#bookmarks>`_.
|
||
|
||
The default UA stylesheet sets a matching bookmark level on all ``<h1>``
|
||
to ``<h6>`` elements.
|
||
|
||
|
||
Version 0.8
|
||
-----------
|
||
|
||
Released on 2012-05-07.
|
||
|
||
* Switch from cssutils to tinycss_ as the CSS parser.
|
||
* Switch to the new cssselect_, almost all level 3 selectors are supported now.
|
||
* Support for inline blocks and inline tables
|
||
* Automatic table layout (column widths)
|
||
* Support for the ``min-width``, ``max-width``, ``min-height`` and
|
||
``max-height`` properties, except on table-related and page-related boxes.
|
||
* Speed improvements on big stylesheets / small documents thanks to tinycss.
|
||
* Many bug fixes
|
||
|
||
.. _tinycss: http://packages.python.org/tinycss/
|
||
.. _cssselect: http://packages.python.org/cssselect/
|
||
|
||
|
||
Version 0.7.1
|
||
-------------
|
||
|
||
Released on 2012-03-21.
|
||
|
||
Change the license from AGPL to BSD.
|
||
|
||
|
||
Version 0.7
|
||
-----------
|
||
|
||
Released on 2012-03-21.
|
||
|
||
* Support page breaks between table rows
|
||
* Support for the ``orphans`` and ``widows`` properties.
|
||
* Support for ``page-break-inside: avoid``
|
||
* Bug fixes
|
||
|
||
Only avoiding page breaks before/after an element is still missing.
|
||
|
||
|
||
Version 0.6.1
|
||
-------------
|
||
|
||
Released on 2012-03-01.
|
||
|
||
Fix a packaging bug. (Remove use_2to3 in setup.py. We use the same
|
||
codebase for Python 2 and 3.)
|
||
|
||
|
||
Version 0.6
|
||
-----------
|
||
|
||
Released on 2012-02-29.
|
||
|
||
* *Backward incompatible*: completely change the Python API.
|
||
See the documentation: http://weasyprint.org/using/#as-a-python-library
|
||
* *Backward incompatible*: Proper margin collapsing.
|
||
This changes how blocks are rendered: adjoining margins "collapse"
|
||
(their maximum is used) instead of accumulating.
|
||
* Support images in ``embed`` or ``object`` elements.
|
||
* Switch to pystacia instead of PIL for raster images
|
||
* Add compatibility with CPython 2.6 and 3.2. (Previously only 2.7
|
||
was supported)
|
||
* Many bug fixes
|
||
|
||
|
||
Version 0.5
|
||
-----------
|
||
|
||
Released on 2012-02-08.
|
||
|
||
* Support for the ``overflow`` and ``clip`` properties.
|
||
* Support for the ``opacity`` property from CSS3 Colors.
|
||
* Support for CSS 2D Transforms. These are prefixed, so you need to use
|
||
``-weasy-transform`` and ``-weasy-transform-origin``.
|
||
|
||
|
||
Version 0.4
|
||
-----------
|
||
|
||
Released on 2012-02-07.
|
||
|
||
* Support ``text-align: justify``, ``word-spacing`` and ``letter-spacing``.
|
||
* Partial support for CSS3 Paged Media: page size and margin boxes with
|
||
page-based counters.
|
||
* All CSS 2.1 border styles
|
||
* Fix SVG images with non-pixel units. Requires CairoSVG 0.3
|
||
* Support for ``page-break-before`` and ``page-break-after``, except for
|
||
the value ``avoid``.
|
||
* Support for the ``background-clip``, ``background-origin`` and
|
||
``background-size`` from CSS3 (but still with a single background
|
||
per element)
|
||
* Support for the ``image-rendering`` from SVG. This one is prefixed,
|
||
use ``-weasy-image-rendering``. It only has an effect on PNG output.
|
||
|
||
|
||
Version 0.3.1
|
||
-------------
|
||
|
||
Released on 2011-12-14.
|
||
|
||
Compatibility with CairoSVG 0.1.2
|
||
|
||
|
||
Version 0.3
|
||
-----------
|
||
|
||
Released on 2011-12-13.
|
||
|
||
* **Backward-incompatible change:** the 'size' property is now prefixed (since
|
||
it is in an experimental specification). Use '-weasy-size' instead.
|
||
* cssutils 0.9.8 or higher is now required.
|
||
* Support SVG images with CairoSVG
|
||
* Support generated content: the ``:before`` and ``:after`` pseudo-elements,
|
||
the ``content``, ``quotes`` and ``counter-*`` properties.
|
||
* Support ordered lists: all CSS 2.1 values of the ``list-style-type`` property.
|
||
* New user-agent stylesheet with HTML 5 elements and automatic quotes for many
|
||
languages. Thanks Peter Moulder!
|
||
* Disable cssutils validation warnings, they are redundant with WeasyPrint’s.
|
||
* Add ``--version`` to the command-line script.
|
||
* Various bug fixes
|
||
|
||
|
||
Version 0.2
|
||
-----------
|
||
|
||
Released on 2011-11-25.
|
||
|
||
* Support for tables.
|
||
* Support the `box-sizing` property from CSS 3 Basic User Interface
|
||
* Support all values of vertical-align except top and bottom. They are
|
||
interpreted as text-top and text-bottom.
|
||
* Minor bug fixes
|
||
|
||
Tables have some limitations:
|
||
Only the fixed layout and separate border model are supported.
|
||
There are also no page break inside tables so a table higher
|
||
than a page will overflow.
|
||
|
||
|
||
Version 0.1
|
||
-----------
|
||
|
||
Released on 2011-10-28.
|
||
|
||
First packaged release. Supports "simple" CSS 2.1 pages: there is no
|
||
support for floats, tables, or absolute positioning. Other than that
|
||
most of CSS 2.1 is supported, as well as CSS 3 Colors and Selectors.
|