Skip to content

Latest commit

 

History

History
107 lines (65 loc) · 3.38 KB

CHANGELOG.md

File metadata and controls

107 lines (65 loc) · 3.38 KB

Changelog

[0.0.6] - (2024-05-22)

  • Removed tablex dependencies
  • Fixed bracket hight calculation
  • Feat: Add option to specify row to note-fields.
  • Feat: Allow pattern as fill arguments
  • Replaced locate with context

[0.0.5] - (2024-03-11)

Added

  • Option to style the header with a background color (fill) and stroke (stroke).
  • Option to specify the row heights of the bytefield with a row argument.
  • Option to add labels without a number by using a negative number.
  • Improved option to show or hide markers underneath a label.

[0.0.4] - (2024-02-18)

This release is a complete refactor of the bytefield package.

Huge thanks to nopeslide for his many ideas through out this process and the annotation feature.

⚠️ Warning: This release breaks some stuff:

  • The bitheader argument was dropped. The header is now defined with the new bitheader() function.
  • The flagtext helper function was removed.

Added

Just a short list of some new features which have been added.

  • note and group field to add annotations on the left and right of the bytefield.
  • First draft of the new bitheader api.
  • Multirow and breaking fields look much nicer now.
  • ... see example.typ for what is possible now.

Changed

Functions are now grouped and separated into multiple files.

bytefield.typ

Contains now only the entry points to the package and exposes the user facing api and a collection of common network protocols

lib/api.typ

Contains the user facing api.

lib/gen.typ

Holds all functions for the new generation pipeline system. As of now the this contains.

  • generation of meta data which is necessary for further processing.
  • finalization of bf-fields, like indexing and additional information.
  • generation of bf-cells from the bf-fields
  • generation of the final outcome by mapping bf-cells to tablex cells

lib/types.typ

Contains all type definitions and creator functions.

The following types are defined: bf-field, data-field, note-field, header-field, bf-cell, header-cell

lib/states.typ

Contains states which are used for global config with bf-config

  • Added state for defining the row_height of the table
  • Added state for defining the header-font-size

lib/asserts.typ

Contains some assertion functions

lib/utils.typ

Contains some utility functions

[0.0.3] - 2023-11-20

  • Added "smart" bit headers thanks to hgruniaux
    • Added "smart-firstline" to only consider the first row for calculation.
  • Added option to pass an int as bitheader, which shows all multiples of this number.
  • Added experimental "text_header" support by passing a dictionary to bitheader.
  • Fixed bitheader number alignment on edge cases. (This could be improved and extended in a future version.)

[0.0.2]

  • Added support for reversed bitheader order with msb_first:true.
  • Quick way to show all headerbits with bitheader: "all".
  • Updated flagtext center alignment.

[0.0.1]

Initial Release

  • Added bytefield, as main function to create an new bytefield diagram.
  • Added bit, bits, byte, bytes, padding, as high level API for adding fields to a bytefield.
  • Added flagtext as a utility function to create rotate text for short flag descriptions.
  • Added ipv4, ipv6, icmp, icmpv6, dns, tcp, udp as predefined diagrams.