Skip to content

Releases

EPG-Renderer 0.16.1

Choose a tag to compare

@github-actions github-actions released this 17 Oct 18:35

This release reads one more kind of edited export and shortens the output of the
check tools. Images, projects and batch output are unchanged.

Fixed

  • Column names with a line break: an export whose header holds a quoted column
    name with a line break (as a spreadsheet program writes it after a line break was
    typed into a header cell) was rejected with "Could not detect CSV delimiter",
    in 0.15.1 as well. It is now read; the column name keeps its line break. All other
    exports are read exactly as by 0.16.0.

For developers

  • Bundles STRio 0.2.2, which detects the delimiter from the first CSV record instead
    of the first physical line.
  • The check tools print a short report that ends with a framed block and
    Result: PASSED or Result: FAILED:
    • tools.run_all_tests holds back what passing tests print and lists only
      failures, errors and skipped tests; -v shows every test as before;
    • tools.run_quality_checks shows a tool's output only when its check fails;
    • tools.run_coverage_checks shows the coverage table only when a threshold is
      missed; -v always shows it.
  • python -m tools.run_release_checks --skip-build runs the quality checks and the
    tests under coverage (the checks of CI's test job) and ends with one summary of all
    stages, including the test counts. Without the flag it also builds and verifies the
    release, as before.

Downloads

The same files as in 0.16.0, with the version 0.16.1 in their names.

EPG-Renderer 0.16.0

Choose a tag to compare

@github-actions github-actions released this 16 Oct 08:21

GeneMapper exports are now read by STRio, a separate package for forensic STR data
that future statistics modules will share. EPG-Renderer carries its own copy (STRio
0.2.1), so nothing has to be installed in addition.

Unchanged

  • Exports that 0.15.1 reads are read the same way: the same samples, markers, alleles,
    heights, sizes and warnings. Images differ from 0.15.1 only in the version number
    they record.
  • The 32,767-RFU limit, the GUI, the command line, the Python API and the batch
    manifest are unchanged.

Changed

  • UTF-16 exports: a file saved as UTF-16 with byte-order mark is now read. Before,
    it was rejected with "Could not detect CSV delimiter".
  • UTF-16 without byte-order mark: the error message now names UTF-16 and the
    encoding option instead of "Could not detect CSV delimiter".
  • Stricter checks of malformed exports, which 0.15.1 accepted silently:
    • two columns whose names differ only in spacing (Sample Name, Sample Name)
      are rejected; before, the second was ignored;
    • areas and the whole-number part of sizes have at most 18 digits;
    • digits of other scripts (١٢٣) are no longer read as numbers, and sizes in
      exponent notation (1e2) or with more than 6 decimal places are rejected.
  • Error messages name a numeric column as it is spelled in the export ('Peak Area 1' instead of 'Area 1') and shorten very long values.
  • Faster reading: exports without quote characters, the usual tab-separated case,
    are read about 45 % faster.

For developers

  • epg_renderer.parser keeps its interface (read_genotypes_table, the five
    exception classes) and delegates reading to the bundled STRio 0.2.1 in
    epg_renderer._vendor.strio. src/epg_renderer/_vendor/VENDORED.json records the
    SHA-256 of every bundled file; python -m tools.vendor_strio <strio checkout>
    replaces the copy and --check compares it with a checkout.
  • Tests: the unchanged 0.15.1 suite passes except
    test_refactoring_structure.test_parser_has_explicit_configuration_header_and_accumulator_types,
    which inspected the reader's former internal classes. It is replaced by
    test_parser_delegates_reading_to_the_bundled_strio_reader. New:
    tests/test_strio_integration.py, including regression tests for a plain
    ValueError that the first 0.16.0 candidate let through for values beyond 4,300
    digits.
  • tools/run_all_tests.py reports in English and lists skipped tests.

Downloads

The same files as in 0.15.1: the Windows GUI EPG-Renderer_GUI_Windows_x64_v0.16.0.zip
with EPG-Renderer-GUI.exe, the standalone epg-render.exe, the source ZIP
EPG-Renderer_v0.16.0.zip, the Python wheel and SHA256SUMS.txt. EPG-Renderer is not
on PyPI; the installation guide describes every download.

EPG-Renderer 0.15.1

Choose a tag to compare

@github-actions github-actions released this 03 Oct 09:52

This release fixes two display errors in the main window of the GUI. Created images
are not affected.

Fixed

  • Buttons hidden after creating an image: review hints or a long output path
    enlarged the status area and pushed "Close" and "Create image" below the window
    edge. Status and review hints now share one field of fixed height with a scrollbar;
    the first hint line states how many hints there are, and the text can be selected
    and copied.
  • Review hints of a previous image: the red review hints stayed visible after
    another file, sample, manual profile or kit was chosen, next to a profile they did
    not belong to. They are now cleared on every such change. Changing the image
    format, the yellow-dye colour or the output file keeps them, because the hints do
    not depend on these settings.

Downloads

The same files as in 0.15.0: the Windows GUI EPG-Renderer_GUI_Windows_x64_v0.15.1.zip
with EPG-Renderer-GUI.exe, the standalone epg-render.exe, the source ZIP
EPG-Renderer_v0.15.1.zip, the Python wheel and SHA256SUMS.txt. EPG-Renderer is not
on PyPI; the installation guide describes every download.

EPG-Renderer 0.15.0

Choose a tag to compare

@github-actions github-actions released this 01 Oct 20:14

This release adds teaching material and off-ladder calls in manual profiles.

New

  • Reading the figure: a new documentation page explains what a figure shows, with
    a synthetic NGM example that contains off-ladder calls with and without an exported
    size, an allele outside the allelic ladder, microvariants and a homozygous marker.
  • Off-ladder calls in manual profiles: enter OL@<allele>, for example OL@34.1
    for D21S11. The peak is labelled OL and drawn at the estimated position of the
    helper allele. Ladder alleles and positions outside the marker range are rejected;
    the GUI guide describes the rules.
  • New README example: a synthetic three-person mixture with a major, a minor and a
    trace contributor in the proportions 6:3:1.

Downloads

The same files as in 0.14.0: the Windows GUI EPG-Renderer_GUI_Windows_x64_v0.15.0.zip
with EPG-Renderer-GUI.exe, the standalone epg-render.exe, the source ZIP
EPG-Renderer_v0.15.0.zip, the Python wheel and SHA256SUMS.txt. EPG-Renderer is not
on PyPI; the installation guide describes every download.

EPG-Renderer 0.14.0

Choose a tag to compare

@github-actions github-actions released this 01 Oct 18:37

This is the first public release of EPG-Renderer. It creates schematic, kit-aware
electropherogram-style figures from forensic STR profiles for publications, teaching
and slides.

Downloads

  • Windows GUI: EPG-Renderer_GUI_Windows_x64_v0.14.0.zip; extract it and start
    EPG-Renderer-GUI.exe. Python is not needed; PNG and JPG output are included.
  • Windows command line: epg-render.exe, a standalone program.
  • Source ZIP: EPG-Renderer_v0.14.0.zip, to start the GUI with Python on macOS,
    Linux or Windows.
  • Python wheel: for the command line and the Python API. EPG-Renderer is not on
    PyPI; install the wheel from this release as described in the installation guide.
  • SHA256SUMS.txt: SHA-256 checksums of all files above.

What EPG-Renderer does

  • reads GeneMapper genotype-table exports (CSV, TSV or TXT) or builds a profile from
    alleles entered manually in the graphical interface
  • resolves the kit automatically or uses the selected one; 14 kit profiles are
    included
  • draws every peak in its dye channel with marker and allele labels; uses exported
    fragment sizes when present and otherwise labelled nominal or estimated positions
  • writes SVG for editing in a vector graphics program, and PNG or JPG for slides; the
    GUI preselects PNG when PNG and JPG output are available
  • shows the yellow dye in yellow or, for better contrast, in black
  • renders one sample or all samples of an export, with a JSON manifest for batches
  • offers the same functions on the command line and through a Python API that reports
    parser warnings and omitted peaks
  • processes everything locally; no profile data is uploaded

Scope

EPG-Renderer is a visualization tool. It does not read raw capillary-electrophoresis
data, reconstruct measured fluorescence curves, or replace analytical interpretation
and quality control. Nominal and estimated positions are not measured fragment sizes.