Skip to content

Releases: ronisbr/PrettyTables.jl

v0.10.1

15 Nov 23:20
Compare
Choose a tag to compare

PrettyTables v0.10.1

Diff since v0.10.0

  • The cell width computation when the column has a maximum allowed size was fixed. (Issue #93)

Closed issues:

  • Latex tables wrapped in tabular environment (#84)
  • ft_printf() not printing in fixed width (#88)
  • HTML backend broken? (#89)
  • PrettyTables 0.10 doesn't handle Tuple columns (#90)
  • Formatter example from the manual does not work (#91)
  • Simplex tableau (#92)
  • Wrong calculation of column width when cropping due to maximum allowed size (#93)

Merged pull requests:

v0.10.0

05 Nov 02:28
Compare
Choose a tag to compare

PrettyTables v0.10.0

Diff since v0.9.1

  • same_column_size was renamed to equal_columns_width.
  • Remove dependency Parameters.jl. This reduced the loading time in 30% but some features related to structure copying are now missing. (Issue #79)
  • All table format variables now has the prefix tf_. This was required to avoid naming conflicts since some variables like matrix have common names.
  • screen_size was renamed to display_size.
  • If a table is cropped in text back-end, then a summary indicating the number of omitted rows and columns is now printed. This can be disable by the option show_omitted_cell_summary.
  • PrettyTables.jl now uses compact printing by default.
  • LaTeX tables when using tabular is now wrapped inside a table environment.
  • PrettyTables.jl does not print trailing spaces anymore.
  • Option crop_subheader in text back-end. If this option is true, PrettyTables.jl neglects the subheader length when computing the row size, cropping it if necessary.
  • Option minimum_columns_width in text back-end. This option allows the user the specify the minimum allowed size of each column.
  • Option maximum_columns_width in text back-end. This option allows the user the specify the maximum allowed size of each column.
  • Option title. It is now possible to define the table title in all back-ends. (Issue #32)
  • Header cells can now be aligned independently from the column alignment. (Issue #66)
  • Option hlines in LaTeX back-end. The user can now define where they want horizontal lines in the LaTeX back-end. (Issue #70)
  • Option cell_first_line_only. If true, then only the first line of the cells are printed.
  • Option row_number_alignment in text back-end. This option can be used to select the alignment of the row number column in text back-end.
  • PrettyTables.jl can now render Markdown cells in all back-ends. (PR #63 and other commits)
  • Option crop_num_lines_at_beginning in text back-end. This option defines how many lines are skipped at the beginning when cropping the table.
  • Option newline_at_end in text back-end. If false, then the table is printed without a newline character at end.
  • Option continuation_row_alignment in text back-end. This option allows the user to select the alignment of the continuation row.
  • Option row_number_column_title. This selects the title of the row number column.
  • A new configuration system is added so that the user can create structures storing printing configurations to be reused.
  • PrettyTables.jl can now use the function print or show to render the cells. This is selected by the keyword renderer.
  • Option ellipsis_line_skip in text back-end. This option configures how many lines are skipped when showing ellipsis to indicate that the lines were cropped.
  • Text back-end can now crop a table in the middle. The behavior can be selected by the keyword vcrop_mode.
  • PrettyTables.jl can now handle UTF-8 strings with variable character size.
  • PrettyTables.jl now supports #undef cells.
  • A lot of optimizations were performed to decrease the time to print the first table, which is now almost 45% less.
  • LaTeX output is now indented.
  • HTML output is now indented.
  • The types when printing Tables.jl now has a compact representation.
  • show_row_number is now available in all back-ends.
  • Revamp of internal mechanism of text back-end, leading to a much more organized code base.
  • The original data is now passed to highlighters and filters when the table complies with Tables.jl API. (Issue #65)
  • LaTeX alignment was wrong in filtered columns.
  • Fix row name crayons in text back-end. (Issue #68)
  • Do not throw an error is a table is empty.
  • End of support of Julia 1.4. The supported versions are 1.0 and 1.5.

Closed issues:

  • Add title option (#32)
  • Export table to PDF/PNG (#50)
  • ERROR: LoadError: The object does not have a valid Tables.jl implementation. (#51)
  • New version release (with overwrite functionality)? (#60)
  • Better support for Pluto.jl and IJulia.jl (#61)
  • Add a table title? (#62)
  • Support for rich cell content using Markdown (#64)
  • Wrong data type in filters when using a table compliant with Tables.jl API (#65)
  • Alighment for Headers to be different than data column (#66)
  • row_name_crayon does not work for me (#68)
  • LaTeX backend does not support hlines specifications (#70)
  • Float alignment to decimal dot (#75)
  • Display width in IJulia (Jupyter): how to avoid truncation? (#76)
  • Possible to fix 1.6-DEV issue? (#77)
  • Parameters.jl dep? (#79)

Merged pull requests:

v0.9.1

16 Jun 00:03
Compare
Choose a tag to compare

PrettyTables v0.9.1

  • The option overwrite was added to the text back-end. It deletes the same amount of lines that will be printed. This can be used to provide a way to display a table that updates with time. (PR #56)
  • The object that complies with Table.jl API can now return any AbstractVector as column or row names. (PR #53 and #54)

Diff since v0.9.0

Closed issues:

  • Unable to precompile PrettyTables.jl (#49)
  • Make column_names of ColumnTable parametric (#52)
  • Heatmap feature (#55)
  • Add documentation about the overwrite option in text backend (#57)
  • LaTeX headers: no textbf? (#59)

Merged pull requests:

  • Change column_names to parametric field (#53) (@Tokazama)
  • Added minimal working table test with non-Vector column names (#54) (@Tokazama)
  • Add option to overwrite in text output (#56) (@ianshmean)

v0.9.0

14 Apr 01:01
Compare
Choose a tag to compare

PrettyTables v0.9.0

Diff since v0.8.4

  • The table format of the text back-end now has the variable vlines which defines the vertical lines that should be drawn by default. In this case, the variables left_border and right_border were removed because they were not necessary anymore.
  • The compatibility with Tables.jl API was improved. Now, tables without a schema can be printed. Furthermore, if a table has a schema but the user pass a header, then the user's header will be used instead. Thus, this can be breaking. (Issue #45)
  • The behavior of the keyword hlines was modified in text back-end. Now, it can be used to draw any horizontal line, including the bottom, header, and top lines. A variable also named hlines was added to the structure TextFormat to defined which horizontal lines should be drawn by default. Thus, the variables top_line, header_line, and bottom_line of the same structure were removed since they were not necessary anymore. Furthermore, the old behavior of hlines and hlines_format can be replicated in this version using body_hlines and body_hlines_format, respectively.
  • The vertical lines behavior in LaTeX back-end was modified to match the behavior selected for the text back-end. Thus, the keyword row_number_vline was removed, since it was not necessary anymore.
  • The API of formatters was drastically change to improve the consistency of the package. Now, as we have in highlighters, the formatters are composed of a function or a tuple of functions with the signature f(value,i,j), where value is the cell value that must be formatted, i is the row number, and j is the column number. These function must return the formatted value for the cell (i,j). Since it is now possible to define multiple formatters, the keyword name was changed from formatter to formatters. The old API still works, but it marked as deprecated.
  • The vertical lines in text back-end can now be controlled by the keyword vlines. (Issue #46)
  • The option row_names can be used to append a column to the left of the table with the names of the columns.
  • The highlighters format of text back-end was improved. The user can now create highlighters that will dynamically apply crayons depending on the data value and the cell coordinate, as it was possible with the LaTeX and HTML back-ends.
  • The API of cell_alignment was changed to improve the consistency of the package. Now, as we have in highlighters, the cell_alignment must be a function or a tuple of functions with the signature f(data,i,j), where data is the matrix that is being printed, i is the row number, and j is the column number. These function must return the alignment symbol for the cell (i,j). For convenience, the old API using dictionaries is still available for the simple cases.
  • End of support of Julia 1.3. The supported versions are 1.0 and 1.4.

Closed issues:

  • Support for schemaless tables? (#45)
  • Add an option to hide vertical column bars in text backend (#46)

v0.8.4

22 Feb 16:01
Compare
Choose a tag to compare

PrettyTables v0.8.4

Diff since v0.8.3

Improvements in the documentation of functions and macros.

v0.8.3

17 Feb 17:01
d8a50c1
Compare
Choose a tag to compare

PrettyTables v0.8.3

Diff since v0.8.2

  • The method pretty_table(String, ...) can be used to return the printed table as a string. Furthermore, all the tests were modified to use this function instead of sprint. (Issue #29)

Closed issues:

  • Getting the output as a string (#29)

Merged pull requests:

v0.8.2

08 Feb 14:10
v0.8.2
Compare
Choose a tag to compare

The table format matrix was added to the text and HTML back-ends. Thanks @DhruvaSambrani. (PR #39, Issue #33)

v0.8.1

01 Feb 00:33
v0.8.1
Compare
Choose a tag to compare
  • The back-end is now automatically inferred from the table type keyword (tf). Thanks @DhruvaSambrani. (PRs #41 and #42, Issue #40)
  • LaTeX back-end was failing when printing a table with an UTF-8 character on it. (Issue #38)
  • Tables.jl API is now the priority when printing tables. This means that if an object complies with this API, then it will be used, even if the object is also derived from a supported type like AbstractVecOrMat. (Issue #28)

v0.8.0

05 Jan 00:57
v0.8.0
Compare
Choose a tag to compare
  • The keyword standalone = false can be used with HTML back-end to print only the table.
  • An experimental version of a LaTeX back-end is now available. Notice that it still lacks tests and many bugs are expected.
  • A table can now be added to a text file using the function include_pt_to_file. You can define marks that will be used to place the table in the file. It works with all back-ends.
  • The support for Tables.jl API were fixed for cases in which Tables.columns did not return a matrix. Thanks @pdeffebach for the PR! (Issue #24) (PR #25)
  • End of support of Julia 1.2. The supported versions are 1.0 and 1.3.

v0.7.0

22 Nov 00:35
v0.7.0
Compare
Choose a tag to compare
  • The keyword columns_width can be used to select the desired width for each column.
  • Add the possibility to automatically wrap the table cells when using the text back-end and the column size is fixed. This can be triggered by the keyword autowrap. (Issue #21)
  • Initial version of HTML back-end. Notice that this is the first version with a minimal set of features. This implementation should be considered beta.
  • The character " is not escaped anymore when printing cells of type AbstractString. (Issue #22)
  • When using the text back-end, passing the table format as an option to pretty_table function is now deprecated. The table format in all back-ends must be passed using the keyword tf. Thus, for example, pretty_table(data, unicode_rounded) must be converted to pretty_table(data, tf = unicode_rounded).