Releases: exomiser/Exomiser
14.1.0 Nice and Splicy
The main changes in this release focus on further updates to ACMG assignment categories, including addition of PS1, PM1, PM5, BS1, BS2 categories to ACMG assignments. This release also includes implementation of the assignment of the ClinGen recommendations for splicing variants.
- New AcmgMissenseInFrameIndelEvidenceAssigner class to assign PS1, PM1, PM5, PP2, BP1, PP3, BP4 to missense and inframe
indels. - New AcmgSpliceEvidenceAssigner class which applies PS1, PP3, BP4, BP7 to splice region variants according to ClinGen
recommendations for splicing variants published in
Using the ACMG/AMP framework to capture evidence related to predicted and observed impact on splicing: Recommendations
from the ClinGen SVI Splicing Subgroup. - New AcmgPVS1EvidenceAssigner handles assignment of PVS1 to loss of function variants according
to Recommendations for interpreting the loss of function PVS1 ACMG/AMP variant criterion - Downgraded BP4 to have a maximum of
Supporting
evidence for REVEL scores under 0.290 - Updated gene constraints to use gnomad v4.1 data
Under the hood changes
- Deprecate out of date Acmg2015Classifier and Acgs2020Classifier
- Update JannovarSmallVariantAnnotator to remove
MNV
annotations from effects as these were overriding more damaging
functional effects such as STOP_LOSS, STOP_GAIN, SPLICE_DONOR, SPLICE_ACCEPTOR which prevented potential assignment of
PVS1. - Update Acmg2015EvidenceAssigner to include BS1, BS2 assignments.
- Refactor Acmg2015EvidenceAssigner missense assignment methods into new AcmgMissenseInFrameIndelEvidenceAssigner class.
- Add PP2/BP1 assignments to AcmgMissenseInFrameIndelEvidenceAssigner using GeneStatistics
- Update ClinVarDao with new getGeneStatistics() method.
- Add new GeneStatistics class for handling aggregated ClinVar gene-level variant effect counts.
- Add new AcmgEvidence.parseAcmgEvidence() method.
- Changes to enable SpliceAI PP3 and other splicing-related ACMG assignments.
- Add new AcmgPVS1EvidenceAssigner class to assign PVS1 to loss of function variants
- Add new AcmgMissenseInFrameIndelEvidenceAssigner class to assign PS1, PM1, PM5, PP2, BP1, PP3, BP4 to missense and
inframe indels - Add new AcmgSpliceEvidenceAssigner class to assign PS1, PP3, BP4, BP7 to splice region variants
- Add new AcmgEvidence.Builder.containsWithEvidence method
- Add @nullable to PathogenicityData.pathogenicityScore method
This update also includes a new 2410 data release. See the data-release discussions for links.
Full Changelog: 14.0.2...14.1.0
Fix for issue #571
Fix for issue #571. This is a bug-fix release to prevent erroneous assignment of PVS1
to recessive-compatible variants in LOF-tolerant genes.
We strongly recommend updating to this release if you rely on the ACMG assignments from Exomiser.
Fix for Issue #565
This is a patch release to prevent a possible ArrayIndexOutOfBoundsException
being thrown when outputting the variants TSV file. There are no other changes.
New Java version, new database format, smaller data downloads, more ACMG categories, better reporting...
- Minimum Java version is now Java 17
- Update database format REQUIRES DATABASE VERSION 2406 - these are significantly smaller than the previous versions (~50-60% of previous size) See the GitHub discussions section for details.
- Added new GeneBlacklistFilter #457
- Add new ClinVar conflicting evidence counts in HTML output #535
- Added PS1, PM1, PM5 categories to ACMG assignments
- Altered reporting of InheritanceModeFilter to state that the number shown refers to variants rather than genes.
- Updated gene constraints to use gnomad v4.0 data.
- TSV genes, TSV variants and VCF outputs will only write to a single file where the possible modes of inheritances are now shown together rather than split across separate files.
- Fix for issue #531 where the
priorityScoreFilter
andregulatoryFeatureFilter
pass/fail counts were not displayed in the HTML. - Fix for issue #534 where variant frequency and/or pathogenicity annotations are missing in certain run configurations.
- Fix for issue #541 where logging to /tmp/spring.log causes clashes in shared user environments.
- TSV output column
CLINVAR_ALLELE_ID
has been changed toCLINVAR_VARIANT_ID
to allow easier reference to ClinVar variants.
Full Changelog: 13.3.0...14.0.0
MT codon tables and Bayesian ACMG
- Updated Jannovar version to 0.41 to fix incorrect MT codon table usage #521
- Downgraded PM2 - PM2_Supporting for variants lacking frequency information #502.
- Updated Acgs2020Classifier and Acmg2015Classifier to allow for PVS1 and PM2_Supporting to be sufficient to trigger LIKELY_PATHOGENIC
- Updated AcmgEvidence to fit a Bayesian points-based system #514
- Removed ASJ, FIN, OTH ExAC and gnomAD populations from presets and examples #513.
- Fix for regression causing
<INV>
variants to be incorrectly down-ranked - Fix for issue #486 where VCF output includes whitespace in INFO field.
- Logs will now display elapsed time correctly if an analysis runs over an hour (!).
Full Changelog: 13.2.1...13.3.0
SV `<INS>` bugfix
This is a bugfix release to address the blanket scoring of <INS>
variants with a variant score of 1.0. The fix should increase the accuracy of SV call prioritisation.
- Fix for bug where all
<INS>
structural variants were given a maximal variant score of 1.0 regardless of their position on a transcript. - Added partial implementation of SVanna scoring for coding and splice site symbolic variants.
- Fix for issue #481 where TSV and VCF results files would contain no data when the analysis
inheritanceModes
was empty.
IMPORTANT! This will be the last major release to run on Java 11. Subsequent major releases (i.e. 14+) will require Java 17.
Sometimes it's the little things...
This release adds a couple of minor quality of life features to the CLI and fixes a few bugs.
- New multi-architecture docker images with and without bash #471. These images can be found on https://hub.docker.com/repositories/exomiser
- Deprecated of
output-prefix
CLI option (will be removed in next major version) #469 - Added
output-directory
andoutput-filename
CLI options to replaceoutput-prefix
#469 - Added
output-format
CLI option #471 - Fixed excessive CPU usage and application hang after variant prioritisation with large number of results #479
- Fixed issue #478 where gene.tsv output files are empty when running a phenotype only prioritisation.
- Fixed broken links to OMIM in the phenotypic similarity section of the HTML output #465
- Added gene symbol as HTML id tag in gene panel HTML results #422
Automated ACMG, p-values, simpler output, documentation!
The three new features for this release is the automated ACMG classification of small sequence variants, calculating
p-values for the combined scores and providing new and more interpretable TSV and VCF output files.
- Added new automated ACMG annotations for top-scoring variants in known disease-causing genes.
- Added new combined score p-value
- Added new TSV_GENE, TSV_VARIANT and VCF output files containing ranked genes/variants for all the assessed modes of
inheritance. Note that these new file formats will supersede the existing individual MOI-specific TSV/VCF files which
will be removed in the next major release. See the online documentation for details. - New update online documentation! See https://exomiser.readthedocs.io/en/latest/
- New Docker hub images for CLI and web on https://hub.docker.com/u/exomiser
- Added checks to ensure user specifies genome assembly if user specifies VCF path outside of phenopacket/analysis
- Added
--output-prefix
option to enable output prefix directly on the command line - Updated examples to use the latest recommended settings as per preset derived from 100,000 genomes project
for the latest data, please follow the discussions for announcements: #424
hg38 only configuration bugfix
Bug-fix release. No external changes.
CLI changes
- Bug fix for issue #410 where application fails to start when only specifying hg38 data in
application.properties
Phenopackets and Structural Variants
This release is primarily focussed on enabling simultaneous prioritisation of structural and non-structural variation
with as consistent an API as possible for both types of variation. It also introduces a new API for specifying richer
information about a Sample
based on the v1 GA4GH Phenopacket
This release requires data version >= 2109 and Java version >= 11 (Java 17 recommended).
Until we're able to upload the data to the usual data.monarchinitiative.org/exomiser/latest you can download the data using these links:
2109_hg19
2109_hg38
2109_phenotype
CLI changes
- Minimum Java version is now set to Java 11
- New structural variant interpretation alongside small variants - requires data version 2109 or higher. This has
been tested using Manta and Canvas short-read callers and pbsv long-read caller. - New command line options for more flexible input: --sample --output, --vcf, --batch, --preset --assembly --ped . Run
--help for details - Phenopackets v1.0 can be used to input sample phenotype data
- Added ability to specify proband age and sex in input options either via a phenopacket or the 'sample' format
- Improved MOI disease - phenotype matching with added Orphanet MOIs
- Improved incomplete penetrance calculation when using the ANY mode of inheritance option
- Added a
minExomiserGeneScore
option for limiting the output genes to have a mimimum Exomiser combined score. This is
disabled by default. If enabling it, we recommend using a minimum score of 0.7 - BREAKING CHANGE - JSON output changes
pos
renamed asstart
,chrmosomeName
renamed ascontigName
.
Deletedchromosome
field (usecontigName
). New fields:end
,length
,changeLength
andvariantType
Core API
API breaking changes:
- New target Java version set to 11
Exomiser.run()
now requiresSample
andAnalysis
argumentsAnalysisRunner
interface now requiresSample
andAnalysis
argumentsAnalysis
fieldsvcfPath
,pedigree
,probandSampleName
andgenomeAssembly
moved to newSample
classPedigreeSampleValidator
moved fromutil
into newsample
package- Replaced
SampleIdentifierUtil
withSampleIdentifiers
class - Replaced
SampleIdentifier
withSampleData
Variant
now extendsorg.monarchinitiative.svart.Variant
- see https://github.com/exomiser/svart/ for details- Deprecated
VariantCoordinates
- replaced byorg.monarchinitiative.svart.Variant
VariantEvaluation.getSampleGenotypes()
now returns aSampleGenotypes
class- Changed
VariantAnnotation
from implementingVariant
to implementing newVariantAnnotations
interface - Updated variant coordinates
getChromosome()
,chromosomeName()
,getPosition()
,getRef()
,getAlt()
to
useSvart
contigId()
,contigName()
,start()
,end()
,ref()
andalt()
signatures - Replaced
RsId
withString
type inFrequencyData
constructors and return fromhasDbSnpRsID()
method - Replaced
Contig
class with newContigs
class VariantAnnotator
interface changed toList<VariantAnnotation> annotate(@Nullable Variant variant)
VariantContextSampleGenotypeConverter.createAlleleSampleGenotypes()
method now returns aSampleGenotypes
objectVariantFactory
now a@FunctionalInterface
with acreateVariantEvaluations()
VariantFactoryImpl
now requiresVariantAnnotator
andVcfReader
input argumentsVcfCodecs
now requiresList
rather thanSet
inputs
New APIs:
- New protobuf schemas for
Job
,Analysis
,Sample
,OutputOptions
- New
Exomiser.run(JobProto.Job job)
entry point - New
FluentAnalysisBuilder
interface implemented byAnalysisBuilder
and newAnalysisProtoBuilder
for consistent
API between proto and domain classes - New
AnalysisGroup
class extracted fromAbstractAnalysisRunner
- New
Sample
class to encapsulate data about the sample, such asAge
andSex
- New
Age
class - New
Phenopacket...
classes for reading and converting sample data from v1 phenopackets - New Proto converter classes
- New
SampleIdentifiers
class - New
SampleData
class to containsampleIdentifier
,SampleGenotype
andCopyNumber
- New
SampleGenotypes
class to handle - New
CopyNumber
class for handling copy number variation data from VCF - New
AbstractVariant
class - New
VariantAnnotations
interface - New
AlleleCall.parseAlleleCall()
method - New
Pedigree
justProband(String id, Individual.Sex sex))
andanscestorsOf(Pedigree.Individual individual)
methods - New
SvFrequencyDao
,SvPathogenicityDao
andSvDaoUtil
classes - New
VariantWhiteListLoader
class - New
JannovarAnnotationService.annotateSvGenomeVariant()
method - New
JannovarSmallVariantAnnotator
class - New
JannovarStructuralVariantAnnotator
class - New
TranscriptModelUtil
class - New
VcfReader
interface withVcfFileReader
andNoOpVcfReader
implementations - New
VariantContextConverter
class for convertingVariantContext
objects intoVariant
Other changes:
- Updated Spring Boot to version 2.5.3
- Updated Jannovar to version 0.30
- Updated HTSJDK to version 2.24.1
AnalysisResults
now hold references to originalSample
andAnalysis
objectsGenomeAnalysisService
can now return aVariantAnnotator
objectGenomeAssembly
now wraps twoGenomicAssembly
objects- Added
ClinVarData
starRating()
andisSecondaryAssociationRiskFactorOrOther()
methods - Added DBVAR, DECIPHER, DGV, GNOMAD_SV and GONL SV
FrequencySource
- Updated
VariantEffectPathogenicityScore
to becomefinal
and added default inversion score - Numerous small changes to improve performance.