Skip to content

Commit

Permalink
Merge pull request #879 from milaboratory/release-411
Browse files Browse the repository at this point in the history
Last things for release 4.1.1
  • Loading branch information
dbolotin authored Nov 11, 2022
2 parents b1f6ec6 + 1500d5a commit 3418ff5
Show file tree
Hide file tree
Showing 11 changed files with 44 additions and 20 deletions.
2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ repositories {
val milibVersion = "2.1.0"
val repseqioVersion = "1.5.0"
val miplotsVersion = "1.1.0"
val mitoolVersion = "1.2.0-15-main"
val mitoolVersion = "1.3.0"
val jacksonBomVersion = "2.14.0"
val redberryPipeVersion = "1.3.0"

Expand Down
24 changes: 24 additions & 0 deletions changelogs/v4.1.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
With this release we continue extending the set of supported single-cell protocols by adding new ready-to-use presets to our collection.
Additionally to newly supported protocols and features required for their reliable analysis this release comes with many usability optimizations and stability improvements. See details below:

# Major changes

- presets for analysis of all types of BD Rhapsody data (see [docs](https://docs.milaboratories.com/mixcr/reference/overview-built-in-presets/#bd-rhapsody) for the list of supported kits)
- analysis of data produced by protocol described in [Han et al. (2014)](https://doi.org/10.1038/nbt.2938) (see [docs](https://docs.milaboratories.com/mixcr/reference/overview-built-in-presets/#han-et-al-2014))
- special presets for exom data analysis `exom-cdr3` and `exom-full-length`
- initial support for overlap-extension-based chain pairing protocols
- possibility to export groups of similar columns specifying single option (like `-allAAFeatures <from_reference_point> <to_reference_point>`)
- more user-friendly alternative for `-uniqueTagsCount` - `-allUniqueTagsCount`; allows to export counts of unique tag combinations (useful for protocols with multiple `CELL` and `UMI` barcodes)
- new "by sequence" filters for all somatic hypermutation trees (SHMT) exports
- new weighted auto-threshold selection and complementary metric histogram aggregation modes (i.e. y-axis on reads-pre-UMI plots now can show number of reads instead of number of UMIs)
- detected allelic variants are now can also be exported in fasta format right from the `findAlleles` command
- better algorithm for seed sequence selection in consensus assembly routine in `assemble`; increases productive consensus count for cases with multi-variant tag groups (i.e. birthday paradoxes in UMI data or single-cell data analysis without UMIs)

# Minor changes:

- minor adjustments for existing presets
- many CLI and parameter validation fixes, more human-readable error messages, better protection from common input errors
- support for preset-embedded tag whitelists for protocols with small number of barcode variants
- options `--use-local-temp`, `--threads`, `--not-aligned-R1`(`R2`) and `--not-parsed-R1`(`R2`) are now available in `analyze`, additionally to individual step commands
- bugfix for imputation in export for compound gene features
- other minor fixes and enhancements
4 changes: 2 additions & 2 deletions src/main/kotlin/com/milaboratory/mixcr/Mixins.kt
Original file line number Diff line number Diff line change
Expand Up @@ -578,7 +578,7 @@ object ExportMixins {
"-aaFeature" -> "-aaFeatureImputed"
"-allNFeatures" -> "-allNFeaturesImputed"
"-allNFeaturesWithMinQuality" -> "-allNFeaturesImputedWithMinQuality"
"-allAaFeatures" -> "-allAaFeaturesImputed"
"-allAAFeatures" -> "-allAAFeaturesImputed"
else -> field
}

Expand All @@ -588,7 +588,7 @@ object ExportMixins {
"-aaFeatureImputed" -> "-aaFeature"
"-allNFeaturesImputed" -> "-allNFeatures"
"-allNFeaturesImputedWithMinQuality" -> "-allNFeaturesWithMinQuality"
"-allAaFeaturesImputed" -> "-allAaFeatures"
"-allAAFeaturesImputed" -> "-allAAFeatures"
else -> field
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ object SHMTreeFieldsExtractorsFactory : FieldExtractorsFactoryWithPresets<SHMTre
this += aaFeatureField
this += FieldsCollection(
Order.`-aaFeature` + 1,
"-allAaFeatures",
"-allAAFeatures",
"Export nucleotide sequences for all covered gene features.",
aaFeatureField,
nodeTypeParam("Of", withParent = false)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ object SHMTreeNodeFieldsExtractor {
this += aaFeatureField
this += FieldsCollection(
Order.`-aaFeature` + 1,
"-allAaFeatures",
"-allAAFeatures",
"Export amino acid sequences for all covered gene features.%n${nodeParamDescription("feature")}",
aaFeatureField,
nodeTypeParamOptional("Of")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ object SplittedTreeNodeFieldsExtractorsFactory : FieldExtractorsFactoryWithPrese
ExportFieldDescription("-jAlignments"),
ExportFieldDescription("-cAlignments"),
ExportFieldDescription("-allNFeatures"),
ExportFieldDescription("-allAaFeatures"),
ExportFieldDescription("-allAAFeatures"),
ExportFieldDescription("-defaultAnchorPoints")
)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -336,8 +336,8 @@ object VDJCObjectFieldExtractors {

this += FieldsCollection(
Order.`-aaFeature` + 1,
"-allAaFeatures",
"Export amino acid sequence ${commonDescriptionForFeatures("-allAaFeatures", aaFeatureField)}",
"-allAAFeatures",
"Export amino acid sequence ${commonDescriptionForFeatures("-allAAFeatures", aaFeatureField)}",
aaFeatureField,
referencePointParamOptional("<from_reference_point>"),
referencePointParamOptional("<to_reference_point>"),
Expand Down Expand Up @@ -401,9 +401,9 @@ object VDJCObjectFieldExtractors {
if (!forTreesExport) {
this += FieldsCollection(
Order.features + 501,
"-allAaFeaturesImputed",
"-allAAFeaturesImputed",
"Export amino acid sequence using letters from germline (marked lowercase) for uncovered regions " +
commonDescriptionForFeatures("-allAaFeaturesImputed", aaFeatureImputedField),
commonDescriptionForFeatures("-allAAFeaturesImputed", aaFeatureImputedField),
aaFeatureImputedField,
referencePointParamOptional("<from_reference_point>"),
referencePointParamOptional("<to_reference_point>"),
Expand All @@ -416,7 +416,7 @@ object VDJCObjectFieldExtractors {
} else {
this += FieldsCollection(
Order.features + 501,
"-allAaFeaturesImputed",
"-allAAFeaturesImputed",
"Export amino acid sequence using letters from germline (marked lowercase) for uncovered regions for all covered features",
aaFeatureImputedField
) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,5 @@
- field: "-jAlignments"
- field: "-cAlignments"
- field: "-allNFeaturesWithMinQuality"
- field: "-allAaFeatures"
- field: "-allAAFeatures"
- field: "-defaultAnchorPoints"
6 changes: 3 additions & 3 deletions src/main/resources/mixcr_presets/blocks/08-exportClones.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
- field: "-jAlignments"
- field: "-cAlignments"
- field: "-allNFeaturesWithMinQuality"
- field: "-allAaFeatures"
- field: "-allAAFeatures"
- field: "-defaultAnchorPoints"

"exportClones-umi-full":
Expand All @@ -45,7 +45,7 @@
- field: "-jAlignments"
- field: "-cAlignments"
- field: "-allNFeaturesWithMinQuality"
- field: "-allAaFeatures"
- field: "-allAAFeatures"
- field: "-defaultAnchorPoints"

"exportClones-single-cell-full":
Expand All @@ -71,5 +71,5 @@
- field: "-jAlignments"
- field: "-cAlignments"
- field: "-allNFeaturesWithMinQuality"
- field: "-allAaFeatures"
- field: "-allAAFeatures"
- field: "-defaultAnchorPoints"
6 changes: 3 additions & 3 deletions src/main/resources/mixcr_presets/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -273,7 +273,7 @@
- field: "-jAlignments"
- field: "-cAlignments"
- field: "-allNFeaturesWithMinQuality"
- field: "-allAaFeatures"
- field: "-allAAFeatures"
- field: "-defaultAnchorPoints"

"pereshlop-test":
Expand Down Expand Up @@ -314,7 +314,7 @@
- field: "-jAlignments"
- field: "-cAlignments"
- field: "-allNFeaturesWithMinQuality"
- field: "-allAaFeatures"
- field: "-allAAFeatures"
- field: "-defaultAnchorPoints"

"umi-guided-consensus-test":
Expand Down Expand Up @@ -408,5 +408,5 @@
- field: "-jAlignments"
- field: "-cAlignments"
- field: "-allNFeaturesWithMinQuality"
- field: "-allAaFeatures"
- field: "-allAAFeatures"
- field: "-defaultAnchorPoints"
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,11 @@ class CommandExportPresetTest {
output.delete()
TestMain.execute(
"exportPreset --species hs --dna " +
"--append-export-clones-field -allAaFeatures " +
"--append-export-clones-field -allAAFeatures " +
"--preset-name test-tcr-shotgun ${output.path}"
)
val result = K_YAML_OM.readValue<MiXCRParamsBundle>(output)
result.exportClones!!.fields shouldContain ExportFieldDescription("-allAaFeatures")
result.exportClones!!.fields shouldContain ExportFieldDescription("-allAAFeatures")
}

@Test
Expand Down

0 comments on commit 3418ff5

Please sign in to comment.