Releases: posit-dev/great-tables
Releases · posit-dev/great-tables
v0.15.0: add Experimental support for using a `pyarrow.Table` as input
Features
- There is now experimental support for using a
pyarrow.Table
as input by @amol- in #487 - The
fmt_flag()
method has been added so that you can display flag icons based on country codes by @rich-iannone in #523 - With the new
fmt_icon()
method, it's possible to have FontAwesome icons within table cells by @rich-iannone in #515 - The
fmt_number()
,fmt_percent()
,fmt_integer()
andfmt_currency()
methods can now format values in accounting notation by @rich-iannone in #513 - Tables can be written as CSS-inlined HTML strings via
as_raw_html()
with the newinline_css=
argument by @rich-iannone in #557 - The
save()
method has been greatly enhanced and includes the ability to perform intermediate saves (since the method returns itself) by @jrycw in #499 - Enhance the
fmt_image()
method to supporthttp
/https
schema in thecolumns=
parameter by @jrycw in #520 - The
pipe()
method has been added and it operates similarly to that of the Pandas and Polars APIs, by @jrycw in #363
Fixes
- Improve detection of Polars installation by @lukemanley in #505
- Add CI build for testing Python 3.13 by @glemaitre in #514
- Having hidden columns along with column width definitions no longer mangles HTML table output by @rich-iannone in #509
- Some
mypy
errors were fixed and the project was switched to ruff linting and formatting by @jrycw in #511 - The CI README badge now properly reports build status by @rich-iannone in #553
- Fix missing exception raise in
_val_is_numeric()
and_val_is_str()
by @jrycw in #510 - Standardize imports by converting absolute imports to relative imports by @jrycw in #521
- Exclude
if TYPE_CHECKING:
lines from coverage reports by @rich-iannone in #556
Docs
- Include the
vals.fmt_image()
function in the API reference by @jrycw in #486 - Make spelling fixes in the contributing guide by @glemaitre in #516
- Add information about Pandas requirement when using internal datasets by @rich-iannone (#549, #559)
- Add a
CITATION.cff
file and provide citation information in README by @rich-iannone in #551 - Update README with conda install instructions and some clarity on which environments Great Tables can be used in, by @rich-iannone in #552
- Improve presentation of Contributing Guidelines by @rich-iannone in #550
New Contributors
- @lukemanley made their first contribution in #505
- @glemaitre made their first contribution in #514
- @amol- made their first contribution in #487
Full Changelog: v0.14.0...v0.15.0
v0.14.0: add experimental support for LaTeX output
Features
- Experimental support for LaTeX-table rendering with new
.as_latex()
method (see important information on current limitations in API reference at https://posit-dev.github.io/great-tables/reference/GT.as_latex.html) by @rich-iannone in #481
Docs
- The Reference API docs now have an improved presentation when viewed on lower-width devices by @machow (#427, #492)
- Preview sections have been added for the built-in datasets by @jrycw in #453
Full Changelog: v0.13.0...v0.14.0
v0.13.0: add more location specifiers to `loc`
Features
- Include
google_font()
helper fn in API reference by @rich-iannone and @jrycw in (#464, #471) - Allow for granular section restyling via convenience api by @timkpaine in #341
- Add
val_fmt_image()
to enable image rendering in various components by @jrycw in #451 - Allow passing a webdriver instance to save by @machow in #478
Fixes
Docs
- Do not document GT members inline on its reference page by @machow in #475
- Fix deprecated warning for
pl.DataFrame.pivot()
by @jrycw in #472 - Update docs and code to support
GoogleFont
inopt_table_font()
and add tests by @jrycw in #470 - Fix in headers causing their css classes get printed out by @machow in #477
- Add docstrings for new location methods by @rich-iannone in #474
Full Changelog: v0.12.0...v0.13.0
v0.12.0: opt_stylize produces striped rows and borders
Breaking changes
opt_stylize()
now produces stripes by default. Setadd_row_striping=False
to remove. (#461)opt_stylize()
now adds borders to certain styles (which was the original intention; #463)
Features
- add
google_font()
helper, implement inopt_table_font()
andstyle.text()
by @rich-iannone in #423 - implement row striping options by @rich-iannone (#461, #463)
Fixes
Docs
Full Changelog: v0.11.1...v0.12.0
v0.11.1
Fixes
- Do not error when URL string supplied to
path=
argument infmt_image()
by @jrycw in #444 - Include an
encoding=
arg inGT.save()
(with default"utf-8"
) for more dependable saving in Windows by @jrycw in #454 - Unify the method signatures of
cols_label()
andcols_width()
by having them both acceptcases=
and**kwargs
by @jrycw in #452
Chores
- Standardize on the
GTSelf
object in method signatures by @jrycw in #431 - Consistently use
isinstance()
checks throughout the codebase instead of checking withhasattr()
by @rich-iannone in #434 - Improve test coverage for various
opt_*
methods by @jrycw in #437 - Consolidate ordered list code using the new
_create_ordered_list()
function by @jrycw in #407 - Internally use
OrderedSet().as_list()
instead oflist(OrderedSet())
for sake of clarity by @jrycw in #447 - Refactor import statements throughout the
_formats.py
file by @jrycw in #450
Docs
- Update import statement in the
GT.data_color()
example by @jrycw in #432 - Indicate that
tab_spanner()
allows for use of units notation in itslabel=
argument by @rich-iannone in #426 - Visually document options for theming table with
opt_stylize()
by @rich-iannone in #438 - Provide updates to PyCon- and SciPy-related blog posts by @rich-iannone in #445
Full Changelog: v0.11.0...v0.11.1
v0.11.0: include column labels in`<thead>` element
This release contains a breaking change in how HTML output tables are structured (through tag changes). There is also an important fix for saving tables via the .save()
method using the Google Chrome webdriver.
Breaking Changes
- We now ensure that the
<thead>
element encloses both title/subtitle and column labels by @rich-iannone in #421
Fixes
- We now ensure that the
<thead>
element encloses both title/subtitle and column labels by @rich-iannone in #421 - The
.save
method works with latest version of Google Chrome by @machow in #425
Docs
- Mention support for
Polars
in theget-started
section by @jrycw in #408 - Made tiny typo fixes and improved a code example in the "Design Philosophy" doc by @alfredocarella in #401
- Fix typo in blog post by @rich-iannone in #396
- Update documentation for datasets by @jrycw in #397
- Update polars examples for deprecated arg by @atseewal in #400
- Remove mentions of
accounting
inforce_sign=
argument by @rich-iannone in #422
New Contributors
- @alfredocarella made their first contribution in #401
Full Changelog: v0.10.0...v0.11.0
v0.10.0
Features
- Add ability to express units in
.cols_label()
by @rich-iannone in #380 - Allow spanners to use units notation in
.tab_spanner()
by @rich-iannone in #393 - The
.opt_table_font()
method has been added to make it easy to set a default table font; by @rich-iannone in #272 - Add the
.show()
method by @machow in #379 - Several new datasets were added (bringing total number up to 16) by @rich-iannone in #382
Fixes
- fix
.fmt_percent()
issue with polars-u64-idx by @lostmygithubaccount in #388 - Add render target for HTML pages by @isabelizimm in #377
.show()
no longer raises or prints to stderr by @machow in #384
Docs
- Add absolute URLs to README to improve PyPI summary by @rich-iannone in #373
New Contributors
- @isabelizimm made their first contribution in #377
- @lostmygithubaccount made their first contribution in #388
Full Changelog: v0.9.0...v0.10.0
v0.9.0: breaking change, add rows parameter to data_color()
Features
- feat!: support specifying a subset of rows in
GT.data_color()
by @jrycw in #364- Note that
rows=
is now the third argument, which may break earlier code.
- Note that
Full Changelog: v0.8.0...v0.9.0
v0.8.0
v0.7.0
What's Changed
Features
- Add the
.fmt_units()
method by @rich-iannone in #240 - Support Polars' non-strict
expand_selector()
by @machow in #368
Fixes
- General enhancements to several
.cols_*()
methods by @jrycw in #366 - Generate better error message for list data used in
.fmt_nanoplot()
by @marcozzxx810 in #356
Docs
Chores
- Refactor
seq_groups()
to acceptIterable
by @jrycw in #365 - Move
pairwise()
,seq_groups()
, andis_equal()
functions to_utils.py
by @jrycw in #369
Full Changelog: v0.6.1...v0.7.0