Releases: Gouvernathor/parliamentarch
v1.1.2
v1.1.1
This fixes a division by zero error when generating diagrams with a single row.
v1.1 : A quiet revolution
This update breaks a small part of the API, but simplifies the interdependence between the various callables and between the two submodules.
Namely, it removes the seat radius from the geometry submodule entirely.
That enables and simplifies future feature additions, since they would complexify something that's less complex in the first place.
Visual changes
In the resulting diagrams, the vertical margin between the bottom-most seats and the bottom border is the same as between the top-most seat (when the outer row has an odd number of seats) and the top border.
The seat radius factor now defaults to 0.8 rather than 1.
Incompatible API changes
The get_seats_centers
function doesn't take a seat_radius_factor
anymore, and returns a plain dict with no attributes.
As a result, the seat_actual_radius
and nrows
values cannot be accessed directly after a call to get_seats_centers
.
The new get_row_thickness
function compensates this by allowing the actual radius (taken by the svg
submodule) to be computed from the radius factor and the number of rows, as follows : seat_actual_radius = seat_radius_factor * get_row_thickness(nrows)
.
As a reminder, nrows
itself can be computed from the number of seats by using the get_nrows_from_nseats
function.
v1.0.3 : Last before a change
Last release before an incompatible API change.
In generating the SVG code, three things are now ommitted :
- the alpha digits of a color with full opacity,
- the <title> element when there is no data to put in it,
- the border style information when the border has no thickness.
v1.0.2
Fixes an encoding issue with the written files.
When passed a file name, the write functions opened a file in the local encoding, as is the infortunate default behavior of Python, but now it will be opened in UTF-8 mode.
It's always possible to pass a file opened under another encoding.
v1.0.1 : Backport to 3.11
This minor release lowers the required minimal Python version to 3.11.
The two functions from the main module level also have more accurate inspectable signatures.
v1.0
This Release includes a CLI : a command-line interface.
This interface still requires an existing json file to be passed, but I feel it works well enough to deserve moving to 1.0 🤩.
v0.2
This adds a CLI and fixes a critical error with the base module functions.
v0.1
Test release...