Skip to content

Releases: vanallenlab/moalmanac

Release 0.8.5

24 Oct 10:36
b7ce179

Choose a tag to compare

This release utilizes the v.2025-02-07 version of the MOAlmanac database. Cancer Gene Census is also no longer required to run moalmanac. The interpreter version was increased to 0.8.5.

The repository history was also cleaned to remove COSMIC and Cancer Gene Census datasources. Users may need to refresh repository history by either recloning the repository or getting the current history. The following code should work instead of pulling the latest main branch, though we recommend creating a back up first.

git fetch --all --prune --prune-tags
git checkout main
git reset --hard origin/main

Additions:

  • datasources/cancergenecensus/cancer_gene_census_empty.genes.tsv is now the default annotation source for the CGC. It is an empty file with our expected headers. To include CGC as part of the annotation process, users must download and manually generate their own version for use. Instructions for how to do this are located at datasources/cancergenecensus/README.md.

Revisions:

  • datasources/cosmic/CosmicMutantExport_empty.lite.txt is now the default annotation datasource for COSMIC as specified within moalmanac/annotation-datasources.ini. Users can still compile COSMIC on their own using the script in datasources/cosmic/ to re-enable COSMIC annotations.
  • datasources/exac/exac.expanded.r1.empty.txt is set as the default annotation datasource for ExAC on GitHub, and this is changed to the compiled version datasources/exac/exac.expanded.r1.txt when the docker is building.
  • Documentation was updated to reflect these changes.
  • Applied Python Software Foundation's black formatting to the repository
  • Removed COSMIC and Cancer Gene Census datasources from the repository history

What's Changed

Full Changelog: 0.8.4...0.8.5

Release 0.8.4

17 Oct 15:21

Choose a tag to compare

This release utilizes the v.2025-02-07 version of the MOAlmanac database. Both COSMIC and ExAC are now no longer required to run moalmanac. The interpreter version was increased to 0.8.4.

Revisions:

  • A file datasources/cosmic/CosmicMutantExport_empty.lite.txt was added. This is an empty file other than the columns expected for COSMIC as a datasource, and is now the default annotation datasource for COSMIC as specified within moalmanac/annotation-datasources.ini. Users can still compile COSMIC on their own using the script in datasources/cosmic/ to re-enable COSMIC annotations.
  • A file datasources/exac/exac.expanded.r1.empty.txt was added. This is an empty file other than the columns expected for ExAC as a datasource. This was not set to be the default annotation datasource for ExAC. Users can change moalmanac/annotation-datasources.ini to point to this file if they do not want to annotate with ExAC. Alternatively, they can either generate the datasource using the script in datasources/exac/ or copy the datasource from the Docker to annotate with ExAC.
  • Documentation was updated to reflect these changes.

What's Changed

Full Changelog: 0.8.3...0.8.4

Release 0.8.3

11 Sep 17:29

Choose a tag to compare

This release utilizes the v.2025-02-07 version of the MOAlmanac database. It includes a fix to a bug that prevented HTML report generation. Specifically, in rare circumstances, the columns sensitive_score_bin_map, resistance_score_bin_map, and prognostic_score_bin_map were not added to the data object for actionable variants, which are used to sort report tables.

Revisions:

  • Changes were made to evaluator.py, illustrator.py, and writer.py to resolve occasionally occurring warnings regarding upcoming changes on interacting with a copy of a slice from a DataFrame and downcasting object dtype arrays.

Bug fixes:

  • Explicitly define sensitive_score_bin_map, resistance_score_bin_map, or prognostic_score_bin_map within the bin_names section of colnames.ini.

What's Changed

Full Changelog: 0.8.2...0.8.3

Release 0.8.2

25 Jun 22:59

Choose a tag to compare

This release utilizes the v.2025-02-07 release of the underlying MOAlmanac database. The codebase now supports Python 3.13 with no warnings produced, although we will continue officially using 3.12 for the time being.

Additions:

  • snfpy was removed as a dependency from the repository, with the relevant module imported with proper attribution. See Pull Request #42 for more information.

Revisions:

  • Several dependencies were updated to their latest versions, notably:
    • matplotlib: 3.8.3 > 3.10.0
    • numpy: 1.26.4 > 2.3.0
    • requests: 2.31.0 > 2.32.4
    • scikit-learn: 1.4.2 > 1.7.0
    • scipy: 1.13.0 > 1.16.0
  • Unit tests checking precise float values were modified to use assertAlmostEqual to 10 places.

What's Changed

Full Changelog: 0.8.1...0.8.2

Release 0.8.1

07 Feb 07:35

Choose a tag to compare

This release utilizes version 2025-02-07 of the underlying moalmanac database and contains changes from several pull requests: #32, #33, #35, and #36.

Revisions:

  • Warnings are no longer produced when running the interpreter with only some input arguments for genomic data specified. From #32.
  • The Docker container is now built to support multiple architectures. From #33.
  • Documentation for several datasources were updated. From #35.

Release 0.8.0

10 Dec 18:17

Choose a tag to compare

This release utilizes the v.2024-12-05 version of the underlying database and contains changes from several pull requests: #27, #28, #29, #30, #31.

Additions:

  • A new output of the suffix .input-metadata.txt. This converts the patients dictionary, which contains input details such as string label, tumor purity, ploidy, and msi status, into a dataframe and outputs it as a table. From #30 .
  • A new output of the suffix .moalmanac-execution.json. This compiles all config settings set in config.ini, execution runtime, input file paths, input datasource paths, input metadata, as well as each tabular output into a single json file. From #30 .
  • A new script moalmanac/run_4x_for_output_regression_test.py to run the moalmanac/run_example.py four times using different config settings and with and without input files. From #29.

Revisions:

  • moalmanac/logger.py was revised to shut down at the end of moalmanac's main function, allowing for multiple processes to be executed in series within a single Python process. From #29.
  • Annotating with ExAC, ExACExtended, and ClinVar will now skip rows that have missing data in any of the required columns. From #28.
  • Docker now uses Python 3.12 and also pushes to the latest tag. From #27.

Bug fixes:

  • Columns with empty values within read count columns would cause the process to fail. From #28.

Release 0.7.2

25 Oct 19:46

Choose a tag to compare

This release utilizes the v.2024-10-03 release of the underlying MOAlmanac database and otherwise fixes two bugs present in Release 0.7.1. This release incorporates pull requests #23 and #24.

Additions:

  • An example log output was added to the example_output/ folder in the root directory of this repository.

Revisions:

  • datasources/moalmanac/molecular-oncology-almanac.json was updated to the 2024-10-03 release.
  • docs/template-pull-request.md was renamed to docs/pull_request_template.md
  • The section heads for both moalmanac/annotation-databases.ini and moalmanac/preclinical-databases.ini were renamed to paths.

Bug fixes:

  • moalmanac/moalmanac.py would attempt to access the value "preclinical" in the preclinical_db_paths dictionary, even if no .ini file was provided using the --preclinical-dbs argument.
  • Templates to generate tables within the Frozen Flask report were modified to include an if statement to only generate tables if the underlying dataframe is not empty.

Release 0.7.1

01 Oct 19:58

Choose a tag to compare

This release utilizes the v.2024-04-11 release of the underlying MOAlmanac database and primarily focuses on adding logging to MOAlmanac and refactoring the codebase to remove the datasources/ directory from the application folder. It incorporates changes from two pull requests: #21 and #22.

Additions:

  • A new output with the suffix .log is generated which details inputs provided, configuration settings, output locations, and MOAlmanac processes as they happen. This is detailed in pull request 22.
  • Two new configuration files: annotation-databases.ini and preclinical-databases.ini have been added to the application folder to detail datasource locations for both required datasources and datasources for the cancer cell line modules, respectively. These sections have been removed from config.ini. annotation-databases.ini and config.ini are now required arguments of moalmanac/moalmanac.py and preclinical-databases.ini is an optional argument.

Revisions:

  • The datasources folder, moalmanac/datasources/, was moved to the root directory of this repository.
  • Input, output, and runtime README files have been updated to reflect the changes of these two pull requests.
  • run_example.py was revised to add the date in ISO format to the default output directory
  • Several unit tests were updated to accommodate the datasources location and aforementioned changes to configuration files.
  • The files moalmanac/run_deconstructSigs.R and moalmanac/wrapper_deconstructSigs.sh have been removed from the repository.

Release 0.6.0

31 May 17:53

Choose a tag to compare

This release utilizes the v.2024-04-11 release of the underlying MOAlmanac database and primarily focuses on supporting Python 3.12. It incorporates changes from two pull requests: #18 and #19.

Additions:

  • A new output regression test to hash and compare output text files from two folders, run_output_regression_test.py. This test is intended to be run on outputs generated from the main branch and a branch intending to be merged.
  • The minimum coverage value is now taken for ONP variants when multiple coverage values are provided on a single row. This change was made to comply with pandas' change in behavior of object type downcasting.

Revisions:

  • All dependencies in requirements.txt have been updated to their latest versions, and also alphabetized.
  • moalmanac/datasources/moalmanac/create_almanac_db.py was revised to (i) take the config.ini file as an input argument and (ii) skip a record if the _deprecated field is set to False.

Bug fixes:

  • investigator.py's populate_feature_dictionary function will no longer will include samples with an NA sample name. Some samples have an NA for sample name because not all samples have an alias across all three naming conventions: Broad Institute, CCLE, and Sanger labels.

Release 0.5.0

05 Jan 20:21

Choose a tag to compare

This release utilizes the v.2023-11-09 release of the underlying MOAlmanac database and incorporates changes from three pull requests: #15: Added AIP to hereditary cancers gene list, #16: Update db nov 2023, and #17: Revise handling of COSMIC mutational signatures.

Additions:

  • Added AIP to genes related to hereditary cancers gene list.
  • All entries within the MOAlmanac database now have filled fields for publication_date of the source and when the record was last_updated.
  • moalmanac/moalmanac.py now accepts --mutational_signatures as an input argument and an example input as been added.

Revisions:

  • MOAlmanac no longer runs deconstructSigs as a subprocess and, as a result, R dependencies have been removed.
  • The annotation to the MOAlmanac database was updated to sort by the evidence type, publication date of the source, and then when the database record was last updated.