v1.2.1 - 2025-01-01
- Add support for Python 3.13 and drop EOL 3.7-3.8 by @hugovk in #65
- Fix README rendering on PyPI (Thanks to @hugovk)
- Add GitHub Actions workflows for building and publishing to PyPI/TestPyPI and signing with sigstore
- Refactor deprecated
@abstractpropertyto use@propertyand@abstractmethoddecorators - Improve type annotations
- Modify to use
setuptools_scmfor package build - Bump minimum version of
DataPropertyto1.1.0 - Bump actions/setup-python from 4 to 5 by @dependabot in #61
- @dependabot made their first contribution in #61
Full Changelog: https://github.com/thombashi/pytablewriter/compare/v1.2.0...v1.2.1
v1.2.0 - 2023-10-08
- Add
enable_style_filtermethod anddisable_style_filtermethod to writer classes - Add
check_style_filter_kwargsmethod to theThemeclass - Add
pytablewriter-altcol-themeto theme extras - Add
marginsupport to theCssTableWriterclass - Add support for Python 3.12
- Modify the style filter to be applicable to table headers: #37 (Thanks to @shawalli)
- Change the
add_col_separator_style_filtermethod that raisesNotImplementedErrorto debug-log output - Improve discovery of pytablewriter plugins
- Bump minimum required version of
typepyto 1.3.2 - Fix
margin,stream, andstyle_filter_kwargsto be propagated correctly infrom_writermethod- Fix the output of
HtmlTableWriter.write_tablemethod when the method called withwrite_css=True
- Fix the output of
- Fix an issue where the CSS output would be incorrect if the
HtmlTableWriter.write_tablemethod was called withwrite_css=Truewhentable_namewas not specified - Fix style applying for headers of
CssTableWriterwriter class - Fix type annotations
Full Changelog: https://github.com/thombashi/pytablewriter/compare/v1.1.0...v1.2.0
v1.1.0 - 2023-09-24
- Add color support for GFM to
MarkdownTableWriterclass - Add
FontStyle.TYPEWRITER - Add styles supported by Latex writers
Style.fg_colorStyle.decoration_line:DecorationLine.STRIKE,DecorationLine.LINE_THROUGHStyle.decoration_line:DecorationLine.UNDERLINE
- Add warnings for when invalid style attributes are passed to the Style class
- Modify the output format of Latex table writers
- Improve type annotations
- Fix Excel worksheet name generation
- Bump minimum required version of
DataPropertyto 1.0.1
Full Changelog: https://github.com/thombashi/pytablewriter/compare/v1.0.0...v1.1.0
v1.0.0 - 2023-06-25
- Add support for Python 3.11
- Drop support for Python 3.6
- Fix a regular expression range of LatexWriter: #57
- Add support for Elasticsearch 8
- Drop support for Elasticsearch 7
- Reduce import time for non-pandas use
- Update
pathvalidatedependency to allow v3 - Bump minimum version requirement of
SimpleSQLite - Improve type annotations
- Add
zip_safe=False - Change the
Cellclass to an immutable data class - Update docs
- Replace deprecated
setup.pycalls - Add
pandasextras - Add
__all__to__init__.py - Remove deprecated functions and properties
dump_tabledataset_log_levelAbstractTableWriter.header_listAbstractTableWriter.type_hint_listAbstractTableWriter.stylesAbstractTableWriter.style_listAbstractTableWriter.value_preprocessor.setter
Full Changelog: https://github.com/thombashi/pytablewriter/compare/v0.64.2...v1.0.0
v0.64.2 - 2022-03-21
- Fix to
thousand_separatorofdefault_stylenot properly applied: #55 (Thanks to @riklopfer) - Add support for
PyYAMLv7 - Avoid installation error with
setuptools>=58 - Modify type annotations:
default_stylepropertyStyleFilterFunc.__call__methodColSeparatorStyleFilterFunc.__call__method
Full Changelog: https://github.com/thombashi/pytablewriter/compare/v0.64.1...v0.64.2
v0.64.1 - 2021-10-17
- Fix write failed when the inputs include
dictvalues: #52 (Thanks to @rutsam) - Improve write performance
Full Changelog: https://github.com/thombashi/pytablewriter/compare/v0.64.0...v0.64.1
v0.64.0 - 2021-10-02
- Modify to accept
deuotekeyword argument at writer class constructors: #51 (Thanks to @andormarkus) - Make it possible to specify type hints by strings
v0.63.0 - 2021-09-20
- Add
max_precisionargument to writer class constructors: #44 - Improve output precision of real numbers: #44
- Remove trailing whitespace when table does not have a name #46 (Thanks to @movermeyer)
- Fix AsciiDoc table header output: #47 (Thanks to @jvdvegt)
- Fix to dequote in cells properly: #49 (Thanks to @hugovk)
- Modify to accept type hints by strings as well
- Add
CodeQLanalysis - Add type annotations
- Allow
XlsxWriterv3 - Add
setup-citarget to Makefile
v0.62.0 - 2021-07-18
- Add support for
CommonMarkas a flavor forMarkdownTableWriterclass - Add support for
kramdown/Jekllyas a flavor forMarkdownTableWriterclass - Add support styles(
fg_color,bg_color,font_weight,font_style) forAsciiDocTableWriterclass - Add
table_styleforMediaWikiTableWriter: #43 - Add
overwrite_type_hintsargument tofrom_dataframemethod - Add types to
pytablewirter.typehint - Add support for string with thousand separators as integer: #44
- Add support for string with thousand separators as integer
- Made it possible to set
flavoras a keyword argument ofMarkdownTableWriterconstructor - Fix to
flavorkeyword argument properly applied when executingwrite_tablemethod at the second time - Change to just output warning instead of raising exception when
set_thememethod failed - Improve error messages when a theme not found
- Improve output precision of numbers: #44
- This may increase output decimal places of real numbers compared to the previous versions
- Remove an unused class
v0.61.0 - 2021-06-16
- Add an alias for
Style.colorasStyle.fg_color - Make it possible to set
themevia writer class constructors - Make it possible to initialize writer from
dataframevia writer class constructors - Fix comparison of
Style.__eq__method - Fix CSS output of
HtmlTableWriter.write_tablemethod whenwrite_css=True - Vendoring
msgfypackage
v0.60.0 - 2021-05-12
- Add support for AsciiDoc format
- Add format name
ssvforSpaceAlignedTableWriterclass - Make it possible to set
write_callbackvia writer class constructors - Fix format attributes of
UNICODE/BOLD_UNICODEenums - Remove
es5/es6fromextras_require
v0.59.0 - 2021-05-04
- Add support for Python 3.10
- Drop support for Python 3.5
- Markdown alignment cells respect
margin#36 (Thanks to @shawalli) - Add validation to margin setter
- Make it possible to set more writer settings via writer class constructors
- Forced to set margin to zero for CSV/sourcecode writer classes
- Fix
_repr_html_method to properly apply writer settings - Fix to
marginvalue setting changes are properly applied after written a table - Modify type annotations
- Update requirements
v0.58.0 - 2020-08-30
- Add
PandasDataFramePickleWriterclass - Add support for keyword arguments initialization to
TableWriterFactoryinstantiation - Fix initialization by keyword arguments of writer class constructor
- Remove deprecated properties
v0.57.0 - 2020-08-22
- Add
table_formatproperty to writer classes - Add
clear_thememethod to writer classes - Add
TableFormat.from_file_extensionclass method - Make it possible to initialize writer instance with constructor
- Fix plugin discovery to avoid errors when some of the functions not implemented
- Fix the case that style filters are not properly applied
v0.56.1 - 2020-08-16
- Add
themeextras
v0.56.0 - 2020-08-16
- Add
set_theme/list_themesfunctions to writer classes - Add
esextras - Implement
__repr__method for text writer classes - Modify pytest stream detection
- Modify not to raise an error when input data is empty
- Fix to properly propagate
max_workersvalue to a dependency package - Update requirements
v0.55.0 - 2020-07-26
- Add
enable_ansi_escapeattribute to writer classes: #30 (Thanks to @calebstewart) - Add
updatemethod to Style class - Modify to disable ANSI escapes during
dumpmethod execution - Modify type annotations for
dumpmethod - Fix to propagate
enable_ansi_escape/colorize_terminalat_repr_html_method - Fix
colorize_terminalto clear preprocess data when the value changed - Update requirements
v0.54.0 - 2020-05-16
- Add
kwargstodumpmethod of writer classes - Add
indentkeyword argument support forwrite_table/dump/dumpsmethods - Add
sort_keyskeyword argument support forwrite_table/dump/dumpsmethod of JSON writer classes - Changes to accept list of dict as value_matrix for JSON table writer classes
- Change the default indent level of
JsonTableWriterclass - Fix output of
JsonLinesTableWriterforNonevalues - Modify output format of
JsonTableWriter.write_tablemethod - Remove
EmptyHeaderError - Update requirements
v0.53.0 - 2020-05-10
- Add GitHub Flavored Markdown support
- Add DecorationLine support as a style
- Add
is_header_rowmethod toCellclass - Modify type annotations
v0.52.0 - 2020-05-05
- Add
YamlTableWriterwriter class - Add
Cellclass - Add
style_filter_kwargsattribute to writer classes - Add
pytablewriter.typehintmodule - Add color support with style
- Make it possible to apply style filter to column separators
- Make it possible to apply part of the style filter to headers
- Make it configurable header row crosspoint characters for text format writer classes
- Make "sort_keys" not True by default #15 (Thanks to @Zackhardtoname)
- Change to convert
Nonevalues for Style class constructor arguments to default values. - Improve an error message: #26 (Thanks to @hugovk)
- Change signatures of
StyleFilterFunc - Change
max_workersattribute default value to 1 - Allow non ascii characters for JSON formats
- Fix changing chars for text format tables not properly applied due to initialization order
- Fix
TomlTableWriternot properly rendered when includingDecimalvalues - Fix
from_tabledatamethod not properly propagatetable_namewhen the value is None - Fix
__repr__method ofStyleclass - Fix style filter to properly apply align
- Update requirements
- Minor bug fixes
v0.51.0 - 2020-04-12
- Add
BoldUnicodeTableWriterclass - Add
BorderlessTableWriterclass - Add underscore support for thousand separators
- Add
TableFormat.from_nameclass method - Add
from_writermethod to writers - Add vertical align to style (only for
HtmlTableWriter): #13 (Thanks to @jimkohl) - Add
write_cssargument add an interface to write CSS withHtmlTableWriter: #16 (Thanks to @domino-blake) - Add
AbstractTableWriterclass to public paths - Add margin property to
AbstractTableWriterclass to avoid lint errors - Make it possible to apply styles to headers
- Fix to properly apply align for
HtmlTableWriter - Make style filter applicable to
HtmlTableWriter - Add
CssTableWriterclass - Fix to include
py.typedto the package - Modify type annotations
- Increase priority of the
xlsxformat withinTableFormat - Change the default
table_namevalue to an empty string - Update requirements
- Minor bug fixes
v0.50.0 - 2020-02-24
- Add
add_style_filtermethod to writers - Add type annotations and
py.typedto the package - Minor bug fixes
v0.49.0 - 2020-02-17
- Add
max_workersproperty to writers - Add validation for
default_stylesetter - Change
_font_size_mapto cache
v0.48.0 - 2020-02-16
- Drop Python 2 support: #24 (Thanks to @hugovk)
- Add support for Python 3.9
- Add support for platforms that lacks support
sem_opensuch as Android Termux - Add
default_styleto writers - Add
update_preprocessormethod to writers - Fix backward compatibility with getting
pandas.DataFrame: #25 (Thanks to @hugovk ) - Replace the logging library from
Logbooktologuru - Remove deprecated methods/properties
- Remove
devextras_require - Rename a property from
stylestocolumn_styles
v0.47.0 - 2020-02-05
- Add support for escape formula injection: #20 (Thanks to @randomstuff)
- for CSV/Excel writers
- Replace line breaks to
<br>tag for HTML table writer: #22 (Thanks to @kesyog) - Modify to replace line breaks separately
v0.46.3 - 2020-01-13
- Add support for PyPy
- Add
es7extras - Integrate
releaseandbuildextras todevextras - Update requirements
v0.46.0 - 2019-05-05
- Drop support for
Python 3.4 - Add deb package to PPA
- Loosen some of the external dependencies version restriction
- Bug fixes
v0.45.1 - 2019-04-20
v0.45.0 - 2019-03-16
v0.44.0 - 2019-02-18
- Add
pandas.DataFramepickle support forfrom_dataframemethod - Add
from_seriesmethod - Bug fixes
v0.43.1 - 2019-02-11
- Improve processing performance
- Suppress excessive DeprecationWarning
v0.43.0 - 2019-02-11
- Improve processing performance
- Add
add_index_columnargument tofrom_dataframe - Add
register_trans_funcmethod - Rename properties:
- from
type_hint_listtotype_hints - from
header_listtoheaders - from
style_listtostyles
- from
- Remove
value_mapproperty
v0.42.0 - 2019-01-27
- Add
trans_funcproperty - Change to forbid to assign a
streamto binary writers - Change to be more informative when optional packages not installed
- Bug fixes
v0.41.2 - 2019-01-14
- Fix missing
extras_requireforhtml(Thanks to @hugovk)
v0.41.1 - 2019-01-14
- Fix the case that changing styles by using
set_stylenot properly applied - Fix
__repr__/__eq__method forStyleclass - Avoid closing ipykernel OutStream
- Bug fixes
v0.41.0 - 2019-01-13
- Add
dumpmethod to writers - Add support for italic style
- Add
is_openedmethod to binary writers - Fix to apply styles for
_repr_html_method - Avoid overwriting the stream when executing
dumpsmethod - Loosen external package dependencies
- Change HTML writer to an extra require
- Bug fixes
v0.40.1 - 2019-01-09
- Fix Excel writers failed to write
v0.40.0 - 2019-01-07
- Add
set_stylemethod to writers - Add
value_mapattribute to writers - Improve precision of column ASCII char width calculation
- Suppress applying styles when the value is null
- Bug fixes
v0.39.0 - 2019-01-06
- Add support for
Styleto ReStructuredText writers - Bug fixes
v0.38.0 - 2019-01-02
- Change to accept string values for the
line_break_handlingattribute of writers - Change
is_write_null_line_after_tabledefault value of writers fromTruetoFalse - Change
dump_tabledatafunction to pass arguments to writer
v0.37.0 - 2019-01-02
- Add
align/thousand_separator/font_weightto Style - Add
line_break_handlingattribute to writers - Bug fixes
v0.36.1 - 2018-11-25
- Add
alltoextras_requirethat enable install all of the extra dependency packages at once - Fix to avoid executing writers constructor when importing
pytablewriter
v0.36.0 - 2018-10-13
v0.35.0 - 2018-10-10
- Loosen external package dependencies
v0.34.0 - 2018-10-07
- Add
style_listattribute to writers as an interface to set styles of columns: #4 (thanks to @jpiter) - Loosen external package dependencies
- Bug fixes
v0.33.0 - 2018-09-30
- Add
format_listattribute to set float formatting in a table: #4 (Thanks to @hugovk) - Improve processing performance
- Enable float formatting in default with
SpaceAlignedTableWriter - Bug fixes
v0.32.0 - 2018-09-17
v0.31.0 - 2018-07-22
v0.30.1 - 2018-07-15
- Add support for Python 3.7
- Bug fixes
v0.30.0 - 2018-06-25
- Add support for LDJSON/JSON Lines/NDJSON
- Bug fixes
v0.29.0 - 2018-06-10
- Add interface to escape HTML tags in cells in a table
- Add
from_tablibmethod - Bug fixes
v0.28.1 - 2018-05-05
- Fix the case that margins not properly worked
- Loosen external package dependencies
v0.28.0 - 2018-04-22
- Add an interface to set margin for both sides of each cell for text format writer classes
- Bug fixes
v0.27.2 - 2018-01-01
- The type detected from the
strvalues has been changed fromstringtype (deprecated since Elasticsearch 5.x) totext/keywordtype
v0.27.1 - 2017-11-20
- Fix the improper write output, which occurred when executing
from_tabledataandwrite_tablemultiple times consecutively.
v0.27.0 - 2017-11-19
- Performance improvement
v0.26.1 - 2017-11-19
- Fix package dependency
v0.26.0 - 2017-11-12
- Performance improvement
- Loosen package dependency
- Bug fixes
v0.25.0 - 2017-11-04
- Improve performance for multi-core environments
- Change Latex output to insert padding to align columns
- Fix improper column width calculation for the case that includes mixed value types in a column
- Drop support for Python 3.3
v0.24.1 - 2017-10-29
- Modify Latex output to optimize for Jupyter Notebook
- Suppress excessive quote output for Excel sheets
v0.24.0 - 2017-08-20
- Add support for Jupyter Notebook
v0.23.1 - 2017-07-31
- Add escape processing for vertical bar characters in Markdown table items to get consistent rendering result
v0.23.0 - 2017-07-23
- Add a table writer class for space aligned values
- Add default headers for Markdown/SQLite table writers that used when headers are null
- Change to preserve spaces in table items
- Change to remove line breaks from headers for text table formats
- Make headers are not mandatory for Pandas writer
- Modify Markdown output format to get more consistent rendering result
- Improve output consistency for SQLite
v0.22.0 - 2017-07-15
- Add support for LaTeX table/matrix
- Improve real number output precision.for CSV/JSON/LTSV/TOML/TSV
v0.21.0 - 2017-07-02
- Add
NumPywriter class - Add
search_table_formatmethod toTableFormatclass - Add attributes to pandas writer class:
import_pandas_as/import_numpy_asto specify import name - Modify to sanitize
Elasticsearchindex name - Bug fixes
v0.20.2 - 2017-06-29
- Fix the case that incorrect write result when matrix which has uniform size for each row
v0.20.0 - 2017-06-25
- Add support for Elasticsearch
- Simplify pandas dataframe output
- Change to accept non string values as headers
- Modify log messages
- Bug fixes
v0.19.1 - 2017-05-03
- Change to write a blank line after writing a text format table
v0.19.0 - 2017-05-02
- Add SQLite writer
- Improve processing performance
- Bug fixes
v0.17.0 - 2017-01-08
- Add type hint interface to writer classes
- Improve data type detection
- Add
get_variable_namemethod to source code writers to provide an interface that retrieves variable names to be written - Add an interface to change variable declaration type to
JavaScriptTableWriterclass- Change default variable declaration type from
vartoconst
- Change default variable declaration type from
v0.16.0 - 2016-12-30
- Add
TOMLformat support - Add
tabledataproperty - Change to all of the source code table writers are required table name
- Improve multibyte character support
- Bug fixes
v0.15.0 - 2016-12-23
- Add
TSV/LTSVsupport - Add
dump_tabledatafunction - Bug fixes
v0.14.0 - 2016-12-10
- Add
from_csvmethod - Improve multi-byte character support
- Bug fixes
v0.13.0 - 2016-11-27
- Add pandas DataFrame as a data source
- Improve multi-byte character support
v0.12.6 - 2016-11-20
- Support multi-byte string formatting
- Bug fixes
v0.12.0 - 2016-10-30
- Add writer factory
- Bug fixes
v0.10.2 - 2016-08-10
- Bug fixes
v0.10.1 - 2016-08-07
- Fix iterative table write
v0.10.0 - 2016-08-07
- Modify to support the iterative table write with PandasDataFrameWriter class
- Add a switch that write datetime instance formatting to PythonCodeTableWriter/PandasDataFrameWriter
- Bug fixes
v0.9.0 - 2016-07-31
- Modify error handling of the write_table_iter method
v0.8.2 - 2016-07-28
- Improve memory efficiency for Python 2
v0.8.0 - 2016-07-23
- Add MediaWiki format support
- Add writing table with iteration
- Add flag to switch writing format of datetime values as date-time instance or string
- Modify to write will be succeeded when the table header is null
- Bug fixes
v0.7.0 - 2016-07-17
- Add support for iteration write
- Fix for the case that excel sheet name includes invalid character(s)
- Minor bug fixes
v0.6.0 - 2016-07-16
- Add support for
.xlsfile format: l: Thanks to @yegorich
v0.5.0 - 2016-07-10
- Split is_quote_str property to is_quote_header property and is_quote_table property
- Modify default datetime format string
- Fix: For float value formatting apply condition
- Fix: An exception is not correctly handled
v0.4.0 - 2016-07-09
- Modification for support Decimal: Thanks to @yegorich
- Minor bug fixes
v0.3.0 - 2016-07-04
- Add is_float_formatting property
- Fix conversion error when writing data that a version string (such as "3.3.5"): Thanks to @yegorich
v0.2.1 - 2016-07-03
v0.2.0 - 2016-07-03
- Add support for:
- bool type
- Infinity value
- Not a Number
v0.1.6 - 2016-06-19
- Make pytest-runner a conditional requirement
v0.1.4 - 2016-05-30
- Fix: PythonCodeTableWriter was written
Noneas string ("None").cfdf591daf - Fix: PandasDataFrameWriter is not properly write a table.
9b82a9715a - Change: write null string when a value in a table is None.
cfdf591daf
v0.1.3 - 2016-05-29
- Fix: converting
Nonevalue tonullwith JavaScriptTableWriter and JsonTableWriter classes
v0.1.2 - 2016-05-29
- Fix variable name output:
9a4f264354