@platforma-open/milaboratories.mixcr-clonotyping-2.workflow 2.5.1 → 2.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +1 -1
- package/.turbo/turbo-test.log +10 -10
- package/CHANGELOG.md +6 -0
- package/dist/tengo/lib/calculate-export-specs.lib.tengo +79 -43
- package/dist/tengo/tpl/aggregate-by-clonotype-key.plj.gz +0 -0
- package/dist/tengo/tpl/calculate-preset-info.plj.gz +0 -0
- package/dist/tengo/tpl/list-presets.plj.gz +0 -0
- package/dist/tengo/tpl/main.plj.gz +0 -0
- package/dist/tengo/tpl/mixcr-analyze.plj.gz +0 -0
- package/dist/tengo/tpl/mixcr-export.plj.gz +0 -0
- package/dist/tengo/tpl/prerun.plj.gz +0 -0
- package/dist/tengo/tpl/process-single-cell.plj.gz +0 -0
- package/dist/tengo/tpl/process.plj.gz +0 -0
- package/dist/tengo/tpl/test.columns-calculate.plj.gz +0 -0
- package/dist/tengo/tpl/test.columns.test.plj.gz +0 -0
- package/package.json +1 -1
- package/src/calculate-export-specs.lib.tengo +80 -44
- package/src/main.tpl.tengo +1 -1
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
WARN Issue while reading "/home/runner/work/mixcr-clonotyping-2/mixcr-clonotyping-2/.npmrc". Failed to replace env in config: ${NPMJS_TOKEN}
|
|
2
2
|
|
|
3
|
-
> @platforma-open/milaboratories.mixcr-clonotyping-2.workflow@2.
|
|
3
|
+
> @platforma-open/milaboratories.mixcr-clonotyping-2.workflow@2.6.0 build /home/runner/work/mixcr-clonotyping-2/mixcr-clonotyping-2/workflow
|
|
4
4
|
> rm -rf dist && pl-tengo check && pl-tengo build
|
|
5
5
|
|
|
6
6
|
info: Skipping unknown file type: test/columns.test.ts
|
package/.turbo/turbo-test.log
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
WARN Issue while reading "/home/runner/work/mixcr-clonotyping-2/mixcr-clonotyping-2/.npmrc". Failed to replace env in config: ${NPMJS_TOKEN}
|
|
2
2
|
|
|
3
|
-
> @platforma-open/milaboratories.mixcr-clonotyping-2.workflow@2.
|
|
3
|
+
> @platforma-open/milaboratories.mixcr-clonotyping-2.workflow@2.6.0 test /home/runner/work/mixcr-clonotyping-2/mixcr-clonotyping-2/workflow
|
|
4
4
|
> vitest
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
[1m[7m[36m RUN [39m[27m[22m [36mv2.1.8 [39m[90m/home/runner/work/mixcr-clonotyping-2/mixcr-clonotyping-2/workflow[39m
|
|
8
8
|
|
|
9
|
-
[32m✓[39m src/test/columns.test.ts [2m([22m[2m6 tests[22m[2m)[22m[33m
|
|
10
|
-
[33m[2m✓[22m[39m checking preset for 'milab-human-dna-xcr-7genes-multiplex' [
|
|
11
|
-
[33m[2m✓[22m[39m checking preset for '10x-sc-xcr-vdj' [
|
|
12
|
-
[33m[2m✓[22m[39m checking preset for 'cellecta-human-rna-xcr-umi-drivermap-…' [
|
|
13
|
-
[33m[2m✓[22m[39m checking preset for 'takara-human-rna-bcr-umi-smartseq' [
|
|
14
|
-
[33m[2m✓[22m[39m checking preset for 'rna-seq' [
|
|
15
|
-
[33m[2m✓[22m[39m checking preset for 'generic-single-cell-gex' [
|
|
9
|
+
[32m✓[39m src/test/columns.test.ts [2m([22m[2m6 tests[22m[2m)[22m[33m 53410[2mms[22m[39m
|
|
10
|
+
[33m[2m✓[22m[39m checking preset for 'milab-human-dna-xcr-7genes-multiplex' [33m13379[2mms[22m[39m
|
|
11
|
+
[33m[2m✓[22m[39m checking preset for '10x-sc-xcr-vdj' [33m8349[2mms[22m[39m
|
|
12
|
+
[33m[2m✓[22m[39m checking preset for 'cellecta-human-rna-xcr-umi-drivermap-…' [33m8047[2mms[22m[39m
|
|
13
|
+
[33m[2m✓[22m[39m checking preset for 'takara-human-rna-bcr-umi-smartseq' [33m8039[2mms[22m[39m
|
|
14
|
+
[33m[2m✓[22m[39m checking preset for 'rna-seq' [33m7808[2mms[22m[39m
|
|
15
|
+
[33m[2m✓[22m[39m checking preset for 'generic-single-cell-gex' [33m7786[2mms[22m[39m
|
|
16
16
|
|
|
17
17
|
[2m Test Files [22m [1m[32m1 passed[39m[22m[90m (1)[39m
|
|
18
18
|
[2m Tests [22m [1m[32m6 passed[39m[22m[90m (6)[39m
|
|
19
|
-
[2m Start at [22m 16:
|
|
20
|
-
[2m Duration [22m
|
|
19
|
+
[2m Start at [22m 10:16:02
|
|
20
|
+
[2m Duration [22m 54.29s[2m (transform 57ms, setup 0ms, collect 610ms, tests 53.41s, environment 0ms, prepare 72ms)[22m
|
|
21
21
|
|
package/CHANGELOG.md
CHANGED
|
@@ -376,12 +376,14 @@ calculateExportSpecs := func(presetSpecForBack, blockId) {
|
|
|
376
376
|
|
|
377
377
|
orderP = 10000
|
|
378
378
|
|
|
379
|
-
mutationColumnVariants := [
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
379
|
+
mutationColumnVariants := [
|
|
380
|
+
|
|
381
|
+
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
|
|
385
|
+
|
|
386
|
+
{
|
|
385
387
|
name: "MutationsCount",
|
|
386
388
|
valueType: "Int",
|
|
387
389
|
labelPart: " mutations count in ",
|
|
@@ -435,21 +437,23 @@ calculateExportSpecs := func(presetSpecForBack, blockId) {
|
|
|
435
437
|
label: "Productive",
|
|
436
438
|
id: "is-productive",
|
|
437
439
|
visibility: false
|
|
438
|
-
}
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
440
|
+
}
|
|
441
|
+
|
|
442
|
+
|
|
443
|
+
|
|
444
|
+
|
|
445
|
+
|
|
446
|
+
|
|
447
|
+
|
|
448
|
+
|
|
449
|
+
|
|
450
|
+
|
|
451
|
+
|
|
452
|
+
|
|
453
|
+
|
|
454
|
+
|
|
455
|
+
|
|
456
|
+
]
|
|
453
457
|
for variant in flagColumnVariants {
|
|
454
458
|
columnsSpecPerClonotype += [ {
|
|
455
459
|
column: variant.columnPrefix + productiveFeature,
|
|
@@ -470,29 +474,29 @@ calculateExportSpecs := func(presetSpecForBack, blockId) {
|
|
|
470
474
|
|
|
471
475
|
|
|
472
476
|
|
|
473
|
-
geneRegions := ["VRegion", "DRegion", "JRegion"]
|
|
474
477
|
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
478
|
+
|
|
479
|
+
|
|
480
|
+
|
|
481
|
+
|
|
482
|
+
|
|
483
|
+
|
|
484
|
+
|
|
485
|
+
|
|
486
|
+
|
|
487
|
+
|
|
488
|
+
|
|
489
|
+
|
|
490
|
+
|
|
491
|
+
|
|
492
|
+
|
|
493
|
+
|
|
494
|
+
|
|
495
|
+
|
|
496
|
+
|
|
497
|
+
|
|
498
|
+
|
|
499
|
+
|
|
496
500
|
|
|
497
501
|
|
|
498
502
|
|
|
@@ -529,6 +533,38 @@ calculateExportSpecs := func(presetSpecForBack, blockId) {
|
|
|
529
533
|
]
|
|
530
534
|
|
|
531
535
|
|
|
536
|
+
|
|
537
|
+
|
|
538
|
+
lengthColumns := ["CDR3"] // assemblingFeatureInfo.nonImputed
|
|
539
|
+
|
|
540
|
+
for featureU in lengthColumns {
|
|
541
|
+
featureL := text.to_lower(featureU)
|
|
542
|
+
for isAminoAcid in [false, true] {
|
|
543
|
+
alphabet := isAminoAcid ? "aminoacid" : "nucleotide"
|
|
544
|
+
alphabetShort := isAminoAcid ? "aa" : "nt"
|
|
545
|
+
alphabetShortMixcr := isAminoAcid ? "aa" : "n"
|
|
546
|
+
columnsSpecPerClonotype += [ {
|
|
547
|
+
column: alphabetShortMixcr + "Length" + featureU,
|
|
548
|
+
id: alphabetShortMixcr + "-length-" + featureL,
|
|
549
|
+
naRegex: "region_not_covered",
|
|
550
|
+
spec: {
|
|
551
|
+
name: "pl7.app/vdj/sequenceLength",
|
|
552
|
+
valueType: "Int",
|
|
553
|
+
domain: {
|
|
554
|
+
"pl7.app/vdj/feature": featureU,
|
|
555
|
+
"pl7.app/alphabet": alphabet
|
|
556
|
+
},
|
|
557
|
+
annotations: a(orderP, false, {
|
|
558
|
+
"pl7.app/label": "Length of " + featureU + " " + alphabetShort
|
|
559
|
+
})
|
|
560
|
+
}
|
|
561
|
+
} ]
|
|
562
|
+
exportArgs += [ [ "-" + alphabetShortMixcr + "Length", featureU ] ]
|
|
563
|
+
orderP -= 100
|
|
564
|
+
}
|
|
565
|
+
}
|
|
566
|
+
|
|
567
|
+
|
|
532
568
|
|
|
533
569
|
columnsSpec := columnsSpecPerSample + columnsSpecPerClonotype
|
|
534
570
|
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -376,12 +376,14 @@ calculateExportSpecs := func(presetSpecForBack, blockId) {
|
|
|
376
376
|
|
|
377
377
|
orderP = 10000
|
|
378
378
|
|
|
379
|
-
mutationColumnVariants := [
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
379
|
+
mutationColumnVariants := [
|
|
380
|
+
// {
|
|
381
|
+
// name: "Mutations",
|
|
382
|
+
// valueType: "String",
|
|
383
|
+
// labelPart: " mutations in ",
|
|
384
|
+
// idPart: "-mutations-"
|
|
385
|
+
// },
|
|
386
|
+
{
|
|
385
387
|
name: "MutationsCount",
|
|
386
388
|
valueType: "Int",
|
|
387
389
|
labelPart: " mutations count in ",
|
|
@@ -435,21 +437,23 @@ calculateExportSpecs := func(presetSpecForBack, blockId) {
|
|
|
435
437
|
label: "Productive",
|
|
436
438
|
id: "is-productive",
|
|
437
439
|
visibility: false
|
|
438
|
-
}
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
440
|
+
}
|
|
441
|
+
// {
|
|
442
|
+
// columnPrefix: "isOOF",
|
|
443
|
+
// arg: "-isOOF",
|
|
444
|
+
// specName: "pl7.app/vdj/sequence/containsOOF",
|
|
445
|
+
// label: "Contains OOF",
|
|
446
|
+
// id: "is-oof",
|
|
447
|
+
// visibility: false
|
|
448
|
+
// }, {
|
|
449
|
+
// columnPrefix: "hasStopsIn",
|
|
450
|
+
// arg: "-hasStops",
|
|
451
|
+
// specName: "pl7.app/vdj/sequence/containsStopCodons",
|
|
452
|
+
// label: "Contains stop codons",
|
|
453
|
+
// id: "has-stops",
|
|
454
|
+
// visibility: false
|
|
455
|
+
// }
|
|
456
|
+
]
|
|
453
457
|
for variant in flagColumnVariants {
|
|
454
458
|
columnsSpecPerClonotype += [ {
|
|
455
459
|
column: variant.columnPrefix + productiveFeature,
|
|
@@ -470,29 +474,29 @@ calculateExportSpecs := func(presetSpecForBack, blockId) {
|
|
|
470
474
|
|
|
471
475
|
// Germline sequences
|
|
472
476
|
|
|
473
|
-
geneRegions := ["VRegion", "DRegion", "JRegion"]
|
|
474
|
-
|
|
475
|
-
for region in geneRegions {
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
}
|
|
477
|
+
// geneRegions := ["VRegion", "DRegion", "JRegion"]
|
|
478
|
+
|
|
479
|
+
// for region in geneRegions {
|
|
480
|
+
// columnsSpecPerClonotype += [ {
|
|
481
|
+
// column: "nSeq" + region + "OfGermline",
|
|
482
|
+
// naRegex: "",
|
|
483
|
+
// allowNA: true,
|
|
484
|
+
// id: "n-seq-" + text.to_lower(region) + "-germline",
|
|
485
|
+
// spec: {
|
|
486
|
+
// name: "pl7.app/vdj/germlineSequence",
|
|
487
|
+
// valueType: "String",
|
|
488
|
+
// domain: {
|
|
489
|
+
// "pl7.app/vdj/feature": region,
|
|
490
|
+
// "pl7.app/alphabet": "nucleotide"
|
|
491
|
+
// },
|
|
492
|
+
// annotations: a(orderP, false, {
|
|
493
|
+
// "pl7.app/label": region[0:1] + " germline"
|
|
494
|
+
// })
|
|
495
|
+
// }
|
|
496
|
+
// } ]
|
|
497
|
+
// exportArgs += [ [ "-nFeature", region, "germline" ] ]
|
|
498
|
+
// orderP -= 100
|
|
499
|
+
// }
|
|
496
500
|
|
|
497
501
|
// Isotype and chain
|
|
498
502
|
|
|
@@ -528,6 +532,38 @@ calculateExportSpecs := func(presetSpecForBack, blockId) {
|
|
|
528
532
|
[ "-topChains" ]
|
|
529
533
|
]
|
|
530
534
|
|
|
535
|
+
//Sequence length
|
|
536
|
+
|
|
537
|
+
// for now use only CDR3 length to avoid generating too many columns
|
|
538
|
+
lengthColumns := ["CDR3"] // assemblingFeatureInfo.nonImputed
|
|
539
|
+
|
|
540
|
+
for featureU in lengthColumns {
|
|
541
|
+
featureL := text.to_lower(featureU)
|
|
542
|
+
for isAminoAcid in [false, true] {
|
|
543
|
+
alphabet := isAminoAcid ? "aminoacid" : "nucleotide"
|
|
544
|
+
alphabetShort := isAminoAcid ? "aa" : "nt"
|
|
545
|
+
alphabetShortMixcr := isAminoAcid ? "aa" : "n"
|
|
546
|
+
columnsSpecPerClonotype += [ {
|
|
547
|
+
column: alphabetShortMixcr + "Length" + featureU,
|
|
548
|
+
id: alphabetShortMixcr + "-length-" + featureL,
|
|
549
|
+
naRegex: "region_not_covered",
|
|
550
|
+
spec: {
|
|
551
|
+
name: "pl7.app/vdj/sequenceLength",
|
|
552
|
+
valueType: "Int",
|
|
553
|
+
domain: {
|
|
554
|
+
"pl7.app/vdj/feature": featureU,
|
|
555
|
+
"pl7.app/alphabet": alphabet
|
|
556
|
+
},
|
|
557
|
+
annotations: a(orderP, false, {
|
|
558
|
+
"pl7.app/label": "Length of " + featureU + " " + alphabetShort
|
|
559
|
+
})
|
|
560
|
+
}
|
|
561
|
+
} ]
|
|
562
|
+
exportArgs += [ [ "-" + alphabetShortMixcr + "Length", featureU ] ]
|
|
563
|
+
orderP -= 100
|
|
564
|
+
}
|
|
565
|
+
}
|
|
566
|
+
|
|
531
567
|
// All columns are added
|
|
532
568
|
|
|
533
569
|
columnsSpec := columnsSpecPerSample + columnsSpecPerClonotype
|
package/src/main.tpl.tengo
CHANGED
|
@@ -135,8 +135,8 @@ wf.body(func(args) {
|
|
|
135
135
|
qc: pframes.exportColumnData(runMixcr.output("qc.data")),
|
|
136
136
|
reports: pframes.exportColumnData(runMixcr.output("reports.data")),
|
|
137
137
|
logs: runMixcr.output("logs.data"),
|
|
138
|
-
clonotypes: pframes.exportFrame(runMixcr.output("clonotypes")),
|
|
139
138
|
clns: runMixcr.output("clns.data"),
|
|
139
|
+
clonotypes: pframes.exportFrame(runMixcr.output("clonotypes")),
|
|
140
140
|
fileImports: smart.createMapResource(maps.mapValues(fileImports, func(im) {
|
|
141
141
|
return im.handle
|
|
142
142
|
}))
|