#############
Release Notes
#############
***************
Versions >= 0.2
***************
..
This is a template: Please copy it and then remove indentation!
X.X.X
====================
Released: YYYY-MM-DD
**๐ New**
* Note: for new, great features
*
**๐ช๐ผ Improvements**
* Note: for smaller improvements
*
**๐ Bug-Fixes**
* Note: Please reference GitHub issues with :issue:`999` and pull requests with :pr:`999`
*
**โ ๏ธ Deprecation**
* Note: For any dropped Python versions, ReportLab versions, xhtml2pdf arguments etc.
*
**๐ Documentation**
*
*
**๐งน Cleanup**
*
*
| Thanks to the following people on GitHub for contributing to this release:
| *GitHub-Name-1*, *GitHub-Name-2* and *GitHub-Name-3* (Note: mention all the merged pull requests since last release here!)
--------------------------------------------
0.2.17
====================
Released: 2025-02-23
**๐ช๐ผ Improvements**
* Reuse background PDF file over multiple pages
* Improve github actions
**๐ Bug-Fixes**
* fix reDOS CVE in getColor function
* Keep GitHub Actions up to date with GitHub's Dependabot
**๐ Documentation**
* Improve documentation and fixed a lot of typos
| Thanks to the following people on GitHub for contributing to this release:
| *Trupal00p* *cclauss* and *kytta-532-better-docs*
0.2.16
======
Released: 2024-06-08
**๐ Bug-Fixes**
* Add compatibility for ``reportlab >= 4.1`` (:issue:`751`)
| Thanks to the following people on GitHub for contributing to this release:
| *stefan6419846*
0.2.15
======
Released: 2024-02-08
**๐ Bug-Fixes**
* Pin ``reportlab>=4.0.4,<4.1`` (:issue:`751`)
| Thanks to the following people on GitHub for contributing to this release:
| *timobrembeck*
0.2.14
======
Released: 2024-01-20
**โ ๏ธ Important notes**
The ``pyCairo`` dependency has been removed to allow the user to define the desired rendering backend individually.
If you need to render bitmaps or vector graphic formats, please specify either ``pycairo`` or ``renderpm`` as extra dependency.
**๐ Bug-Fixes**
* Remove unintentional packages from wheel (:issue:`736`)
* Make ``pyCairo`` dependency optional (:issue:`741`)
* Fix image rendering with link_callback (:issue:`738`)
| Thanks to the following people on GitHub for contributing to this release:
| *carlsmedstad*, *timobrembeck*
0.2.13
======
Released: 2023-11-09
**๐ Bug-Fixes**
* Fix ``TypeError`` on column widths specified as percentages (:issue:`731`)
* Fix ``TypeError`` when formatting width in debug logging (:issue:`730`)
| Thanks to the following people on GitHub for contributing to this release:
| *JanEgner*, *timobrembeck*
0.2.12
======
Released: 2023-11-08
**๐ Bug-Fixes**
* Fix page number & page count (:issue:`106`) (:pr:`695`)
* Fix ``ZeroDivisionError`` on broken image files (:pr:`723`)
**๐ Documentation**
* Update README (:pr:`707`)
* Modernize Sphinx configuration (:pr:`711`)
**๐งน Cleanup**
* Change print statement to log.exception (:pr:`700`)
* Remove Python2 compatibility (:pr:`706`)
* Depend on ``html5lib >= 1.1`` (:issue:`705`) (:pr:`709`)
* Depend on ``reportlab >= 4.0.4`` (:issue:`699`) (:pr:`708`)
* Use black code style (:pr:`714`)
* Enforce consistent file formatting (:pr:`715`)
* Add ruff code linter (:pr:`716`)
* Start using type hints & validate them via mypy (:pr:`717`)
* Drop support for Python 3.7 (reached end of life on 2023-06-27) (:pr:`718`)
* Add support for Python 3.12 (released on 2023-10-02) (:pr:`719`)
| Thanks to the following people on GitHub for contributing to this release:
| *JanEgner*, *lucasgadams*, *a-detiste*, *holtwick*, *stefan6419846*, *timobrembeck*
--------------------------------------------
0.2.11
=======
Released: 2023-06-07
This release only aims to fix issues with pycairo and xhtml2pdf dependencies with reportlab.
**๐ Bug-Fixes**
* Fix setup.py and requirements dependency to set reportlab>=3.5.53,<4 :issue:`688` in :pr:`690`
| Thanks to the following people on GitHub for contributing to this release:
| *gaurab-10*, *jorenham*
--------------------------------------------
0.2.10
======
Released: 2023-04-20
**๐ Bug-Fixes**
* Fix canvas graph issue :issue:`614` in :pr:`619`
**๐งน Cleanup**
* Remove duplicate pypdf entry from `setup.py` in :pr:`619`
| Thanks to the following people on GitHub for contributing to this release:
| *brandonlake-semaphore*, *sunpoet*
--------------------------------------------
0.2.9
=====
Released: 2023-01-30
**Important notes**
* Text RTL has new implementation but I am not sure if works as required, more works need so use it, for text and let me know if it's works.
**๐ New**
* OL tag allow start counter
* Div, P, And Body allows dir attribute (rtl and ltr) to provide text direction
**๐ช๐ผ Improvements**
* Page counter and Page number are now available as simple text inside paragraphs
* New regex for strip up to curly bracket
* Change pyPDF3 to pypdf.
| Thanks to the following people on GitHub for contributing to this release:
| *BergLucas*, *matllubos*, *timobrembeck*, *MartinThoma*, *charludo*, *jorenham*
--------------------------------------------
0.2.8
=====
Released: 2022-06-16
**๐ Bug-Fixes**
* Fix background-image issues with :issue:`614` and pull requests with :pr:`619`
* Fix CSSParseError for minified @font-face definitions :pr:`609`
* Fixed a few typos and grammar mistakes in usage.rst documentation. :pr:`610`
| Thanks to the following people on GitHub for contributing to this release:
| *MuhammedNihad*, *timobrembeck*, *flash716*
--------------------------------------------
0.2.7
=====
Released: 2022-03-31
**๐ New**
* Add encryption and password protection
* New WaterMark management system with new options
* Add Graphic builder
* Add signing pdfs (simple and pades)
**๐ Bug-Fixes**
* Remove import cycle between utils and default
* Fixed link_callback construction of path
* Fixed path when is relative to current path
**โ ๏ธ Deprecation**
* `xhtml` in pisa.CreatePDF support will removed on next release
* `XML2PDF` and `XHTML2PDF` will be removed on next release use `HTML2PDF` instead
**๐ Documentation**
* Add render pdf on documentation and add some html example.
* Include graphics examples
| Thanks to the following people on GitHub for contributing to this release:
| *marcelagz* for graphics support :)
--------------------------------------------
0.2.6
=====
Released: 2022-03-11
**๐ New**
* Set timeout in https options
* Add new file manager approach using factory method, now new classes deal with different types of data B64InlineURI, LocalProtocolURI, NetworkFileUri, LocalFileURI, BytesFileUri
* rtl languages reversed lines added as a ParaFrag (note: not fully supported yet)
* Check if Paragraph has 'rtl' attribute (note: not fully supported yet)
* Add SVG support
**๐ช๐ผ Improvements**
* Update packages dependencies
* Now getColor return None when None is passed ignoring default value, but return default if bool(data) == false
* Change test for github workflow using only Linux
* Add Python 3.9, 3.10
* Switch from PyPDF2 to PyPDF3
* Allow call tests using make.
**๐ Bug-Fixes**
* Fix UnboundLocalError in reportlab_paragraph (:issue:`585`) (:pr:`586`)
**๐ Documentation**
* Created this release notes section.
* Updated the Sphinx version and the sphinx-rtd-theme version
* Update package information.
**๐งน Cleanup**
* Drop python 2 support.
* Remove most of python 2 code and cleanup
* Remove six dependency and update Readme
* Remove usage of getStringIO (#590) removed form reportlab
| Thanks to the following people on GitHub for contributing to this release:
| *Roman914*, *LeonardoBein*, *myu20*, *myu20*, *captn3m0*, *audoh-tickitto*, *Momoumar*,
| *timobrembeck*, *fbernhart*,*mgodkowicz*, *anze3db * and *luisza*
--------------------------------------------
0.2.5
=====
Released: 2020-10-08
**๐ New**
* Added Asian fonts support (Simplified Chinese, Traditional Chinese, Japanese & Korean) :issue:`353`
* Added support for right-to-left writings like Arabic, Hebrew, Persian, Pashto, Urdu and Sindhi. Simply include for example ```` :issue:`494`
**๐ช๐ผ Improvements**
* CSS property ``letter-spacing`` now supports float values and relative & absolute units like ``cm``, ``in``, ``em``, ``%`` etc. :issue:`490`
* Added unit tests for Asian and right-to-left fonts. :pr:`520`
**๐ Bug-Fixes**
* ``@frame`` properties like ``width``, ``right``, ``bottom`` etc. are now correctly calculated depending on the page orientation and size :issue:`499`
* Fixed support for multiple fonts and unicode :issue:`492`
* Fixed an encoding issue with html5lib :issue:`468`
* Fixed a problem with the ``border`` property in ``h1`` to ``h6`` heading tags :issue:`466` :issue:`495`
* Fixed compatibility with ReportLab 3.5.X :issue:`404` :issue:`463`
* Removed default background-image when no background-image is defined :issue:`484`
* Fixed an issue with different font type that have the same name :issue:`381`
* Fixed a bug that prevented support for Python 3.X :issue:`513`
* testrender test: fixed transparences and included new reference files, (now all tests pass in Travis CI without --failed parameter) :pr:`502`
* ``0.0`` as value for a CSS property now acts the same way as ``0`` and ``None`` :pr:`516`
**โ ๏ธ Deprecation**
* Removed ``i`` and ``inch`` as unofficial synonyms for the ``in`` unit :pr:`516`
**๐ Documentation**
* Added new section about Asian font support :pr:`505` :pr:`520`
* Added new section about support for right-to-left writings :pr:`520`
* Readme.rst file was updated :pr:`507` :pr:`512`
* Added missing changelog entries for earlier releases :issue:`478`
**๐งน Cleanup**
* Replaced deprecated ``base64.encodestring`` with ``base64.encodebytes`` :issue:`472`
* Replaced deprecated ``log.warn()`` with ``log.warning()`` :pr:`509`
* Dropped dependency of nose (outdated & unmaintained) in favor of unittest, which is included in the Python standard library :pr:`520`
* Removed the old nose tests and replaced them with unittest :pr:`520`
* Removed unlicensed .tff font files in our tests folder and replaced them with open source fonts :pr:`520`
* Travis CI and AppVeyor are now testing both against the same ReportLab versions (3.3 to 3.5.X) :pr:`520`
| Thanks to the following people on GitHub for contributing to this release:
| *ezawadzki*, *fbernhart*, *KirilNN*, *luisza*, *Mark-Hetherington*, *parthjoshi2007*, *pedroszg*, *silvio-dp*, *sj175*, *tirkarthi* and *z4c*
--------------------------------------------
0.2.4
=====
Released: 2020-01-18
**๐ New**
* Add ``em`` unit support
**๐ช๐ผ Improvements**
* Added testing for Python 3.7 and 3.8
* Added support for urllib in Python 2 and Python 3
**๐ Bug-Fixes**
* Fixed cgi escape util on setup version
* Fixed width assignation on fragments
* Repaired base64 unscaped string
* Fixed urlparse when urls has parameters
* Fixed i_rgbcolor support
**๐ Documentation**
* Updated ``link_callback`` documentation
* Stylized code lines in documentation
--------------------------------------------
0.2.3
=====
Released: 2018-09-14
Changes were not documented
--------------------------------------------
0.2.2
=====
Released: 2018-04-16
Changes were not documented
--------------------------------------------
0.2.1
=====
Released: 2018-02-16
**๐ New**
* Added support for Python 3.8
**๐ช๐ผ Improvements**
* Improved table tests
**๐ Bug-Fixes**
* Forced html5lib to 1.0.1 (old versions of html5lib are not in pip)
* Allow for URI-escaped strings in base64 data
**๐งน Cleanup**
* Removed the dependency on httplib2
--------------------------------------------
0.2
===
Released: 2018-02-15
**๐ New**
* Support for a new ``@page`` property: ``background-image``
**๐ช๐ผ Improvements**
* Improved Python 3 support
* Included new ``httplib`` options
**๐ Bug-Fixes**
* Fix for transparent images in Python 3
**โ ๏ธ Deprecation**
* Removed support for Python 2.3
**๐ Documentation**
* Readthedocs integration
* Updated Django demo site
**๐งน Cleanup**
* PEP8 improvements and code cleanups
* Dropped the ``turbogears`` module
| Thanks to the following people on GitHub for contributing to this release:
| *andreyfedoseev*, *browniebroke*, *flupzor* and *luisza*
--------------------------------------------
0.2beta1
========
Released: 2016-11-30
Changes were not documented
--------------------------------------------
**********************
Versions >= 0.1, < 0.2
**********************
0.1beta3
========
Released: 2016-08-16
Changes were not documented
--------------------------------------------
0.1beta2
========
Released: 2016-08-01
Changes were not documented
--------------------------------------------
0.1beta1
====================
Released: 2016-06-05
Changes were not documented
--------------------------------------------
0.1alpha4
=========
Released: 2016-05-18
* Removed PyPy support
* Avoid exceptions likely to occur systematic to how narrow a text column is #309 - thanks *jkDesignDE*
* Improved tests for tables :pr:`305` - thanks *taddeimania*
* Fix broken empty PDFs in Python2 :pr:`301` - thanks *citizen-stig*
* Unknown page sizes now raise an exception :pr:`71` - thanks *benjaoming*
* Unorderable types caused by duplicate CSS selectors / rules :pr:`69` - thanks *benjaoming*
* Allow empty page definition with no space after @page - :pr:`88` - thanks *benjaoming*
* Error when in addFromFile using file-like object :pr:`245` - thanks *benjaoming*
* Python 3: Bad table formatting with empty columns :pr:`279` - thanks *citizen-stig and benjaoming*
* Removed paragraph2.py, unused ghost file since the beginning of the project :pr:`289` - thanks *citizen-stig*
* Catch-all exceptions removed in a lot of places, not quite done :pr:`290` - thanks *benjaoming*
--------------------------------------------
0.1alpha3
=========
Released: 2016-05-01
* Improved six usage, simplifies codebase :pr:`288` - thanks *citizen-stig*
* Removed mutable types as default args :pr:`287` - thanks *citizen-stig*
* Fix "hangs forever on simple input" :pr:`209`
* Base64 inline works now :pr:`281`
--------------------------------------------
0.1alpha2
=========
Released: 2016-04-14
* Fixed: AttributeError: 'bytes' object has no attribute 'encode' :pr:`265`
* Improved tests, added code coverage
--------------------------------------------
0.1alpha1
=========
Released: 2016-01-20
This major version bump signals that we have added Python 3 support. Other than
that, the project remains largely unchanged.
* Python 3 support
* Cleaning up codebase
* Github and documentation modernizations
--------------------------------------------
**************
Versions < 0.1
**************
0.0.6
=====
Released: 2014-04-27
* get css backgrounds and fonts relative to the css file path
* fix CSS parser breaking on "@media screen and ..." (:issue:`132`)
--------------------------------------------
0.0.5
=====
Released: 2013-03-25
* Switched dependency to Pillow instead of PIL.
* Converted the docs to rst (thanks tomscytale!)
* Huge performance improvements (thanks Andrea Bravetti!)
* Bugfixes.
--------------------------------------------
0.0.4
=====
Released: 2012-05-23
* Added a tag to write the total number of pages.
* The tag now accepts a fontsize argument for the human-readable font.
* Various bugfixes and enhancements
--------------------------------------------
0.0.3
=====
Released: 2011-06-19
Changes were not documented
--------------------------------------------
0.0.2
=====
Released: 2011-05-27
Changes were not documented
--------------------------------------------
0.0.1
=====
Released: 2011-05-20
Changes were not documented
--------------------------------------------
0.0.0
=====
Released: 2011-05-19
Changes were not documented
--------------------------------------------
***************
Legacy Versions
***************
The following changelog entries were relevant before the maintainer change.
"I would like to thank the people mentioned in brackets in this change log
very much for their help and support!" - Dirk
Version 3.0.33, 2010-06-16
- NEW: Changed license to Apache License 2.0, now completely Open Source without any charging. Feel free to continue or for this project.
- FIX: Empty cells now collapse
Version 3.0.32, 2009-05-08
- NEW: New command line option '--base' to specify base path if input comes via STDIN
- FIX: The 'keep in frame' feature for tables did not work inside of static frames (Arun Shanker Prasad)
- FIX: Small typos
Version 3.0.31, 2009-05-04
- NEW: Support for Style "list-style-image", also supports "zoom"
- NEW: Temporary files internally are written to disk if they exceed a certain size
- NEW: Font names can now also read from external URL
- UPD: Modified pdfjoiner.py demo
- FIX: Custom font image problem still appeared
- FIX: Single image in a block issue
- FIX: Randomly used wrong images is fixed using a workaround for the bug in Reportlab _digester routine
- FIX: Empty tables error (Davide Moro)
- FIX: Fallback to urllib2 if httpdlib fails
Version 3.0.30, 2009-03-27
- NEW: Default CSS now hides content of