@platforma-open/milaboratories.immune-assay-data.workflow 1.8.0 → 1.8.1
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/CHANGELOG.md +8 -0
- package/dist/tengo/tpl/analysis.plj.gz +0 -0
- package/dist/tengo/tpl/build-outputs.plj.gz +0 -0
- package/dist/tengo/tpl/check-content-empty.plj.gz +0 -0
- package/dist/tengo/tpl/extract-unique-values.plj.gz +0 -0
- package/dist/tengo/tpl/get-unique-values.plj.gz +0 -0
- package/dist/tengo/tpl/main.plj.gz +0 -0
- package/dist/tengo/tpl/process-outputs.plj.gz +0 -0
- package/dist/tengo/tpl/run-alignment.plj.gz +0 -0
- package/package.json +5 -4
- package/src/analysis.tpl.tengo +14 -5
- package/src/check-content-empty.tpl.tengo +2 -14
- package/src/main.tpl.tengo +13 -4
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
WARN Issue while reading "/home/runner/work/immune-assay-data/immune-assay-data/.npmrc". Failed to replace env in config: ${NPMJS_TOKEN}
|
|
2
2
|
|
|
3
|
-
> @platforma-open/milaboratories.immune-assay-data.workflow@1.8.
|
|
3
|
+
> @platforma-open/milaboratories.immune-assay-data.workflow@1.8.1 build /home/runner/work/immune-assay-data/immune-assay-data/workflow
|
|
4
4
|
> rm -rf dist && pl-tengo check && pl-tengo build
|
|
5
5
|
|
|
6
6
|
Processing "src/analysis.tpl.tengo"...
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @platforma-open/milaboratories.immune-assay-data.workflow
|
|
2
2
|
|
|
3
|
+
## 1.8.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 36ed105: Improve empty input detection
|
|
8
|
+
- Updated dependencies [36ed105]
|
|
9
|
+
- @platforma-open/milaboratories.immune-assay-data.check-content-empty@1.0.1
|
|
10
|
+
|
|
3
11
|
## 1.8.0
|
|
4
12
|
|
|
5
13
|
### Minor Changes
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@platforma-open/milaboratories.immune-assay-data.workflow",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Tengo-based template",
|
|
6
6
|
"dependencies": {
|
|
7
7
|
"@platforma-sdk/workflow-tengo": "5.9.1",
|
|
8
8
|
"@platforma-open/soedinglab.software-mmseqs2": "1.18.3",
|
|
9
|
-
"@platforma-open/milaboratories.immune-assay-data.add-header": "1.1.3",
|
|
10
9
|
"@platforma-open/milaboratories.immune-assay-data.prepare-fasta": "1.1.3",
|
|
10
|
+
"@platforma-open/milaboratories.immune-assay-data.add-header": "1.1.3",
|
|
11
11
|
"@platforma-open/milaboratories.immune-assay-data.coverage-mode-calc": "1.2.0",
|
|
12
12
|
"@platforma-open/milaboratories.immune-assay-data.fasta-to-tsv": "1.1.3",
|
|
13
|
-
"@platforma-open/milaboratories.immune-assay-data.xlsx-to-csv": "1.1.0"
|
|
13
|
+
"@platforma-open/milaboratories.immune-assay-data.xlsx-to-csv": "1.1.0",
|
|
14
|
+
"@platforma-open/milaboratories.immune-assay-data.check-content-empty": "1.0.1"
|
|
14
15
|
},
|
|
15
16
|
"devDependencies": {
|
|
16
|
-
"@platforma-sdk/tengo-builder": "2.4.
|
|
17
|
+
"@platforma-sdk/tengo-builder": "2.4.28"
|
|
17
18
|
},
|
|
18
19
|
"scripts": {
|
|
19
20
|
"build": "rm -rf dist && pl-tengo check && pl-tengo build",
|
package/src/analysis.tpl.tengo
CHANGED
|
@@ -12,6 +12,7 @@ fastaToTsvSw := assets.importSoftware("@platforma-open/milaboratories.immune-ass
|
|
|
12
12
|
addHeaderSw := assets.importSoftware("@platforma-open/milaboratories.immune-assay-data.add-header:main")
|
|
13
13
|
covModeCalcSw := assets.importSoftware("@platforma-open/milaboratories.immune-assay-data.coverage-mode-calc:main")
|
|
14
14
|
xlsxToCsvSw := assets.importSoftware("@platforma-open/milaboratories.immune-assay-data.xlsx-to-csv:main")
|
|
15
|
+
checkContentEmptySw := assets.importSoftware("@platforma-open/milaboratories.immune-assay-data.check-content-empty:main")
|
|
15
16
|
|
|
16
17
|
runAlignmentTpl := assets.importTemplate(":run-alignment")
|
|
17
18
|
checkContentEmptyTpl := assets.importTemplate(":check-content-empty")
|
|
@@ -274,16 +275,24 @@ self.body(func(args) {
|
|
|
274
275
|
arg("-o").arg("results_with_header.tsv").
|
|
275
276
|
addFile("results.tsv", mmseqsOutput).
|
|
276
277
|
saveFile("results_with_header.tsv").
|
|
277
|
-
saveFileContent("results_with_header.tsv").
|
|
278
278
|
run()
|
|
279
279
|
|
|
280
280
|
mmseqsResultTsv := addHeaderRun.getFile("results_with_header.tsv")
|
|
281
|
-
mmseqsResultContent := addHeaderRun.getFileContent("results_with_header.tsv")
|
|
282
281
|
|
|
283
|
-
//
|
|
282
|
+
// Check if results are empty (only header line or nothing)
|
|
283
|
+
checkResultsRun := exec.builder().
|
|
284
|
+
software(checkContentEmptySw).
|
|
285
|
+
arg("-i").arg("input.file").
|
|
286
|
+
arg("-n").arg("2"). // Require at least 2 non-empty lines (header + 1 data line)
|
|
287
|
+
addFile("input.file", mmseqsResultTsv).
|
|
288
|
+
saveStdoutContent().
|
|
289
|
+
mem("8GiB").
|
|
290
|
+
cpu(1).
|
|
291
|
+
inLightQueue().
|
|
292
|
+
run()
|
|
293
|
+
|
|
284
294
|
checkResult := render.create(checkContentEmptyTpl, {
|
|
285
|
-
content:
|
|
286
|
-
mode: "headerOnly"
|
|
295
|
+
content: checkResultsRun.getStdoutContent()
|
|
287
296
|
})
|
|
288
297
|
emptyResults := checkResult.output("result")
|
|
289
298
|
|
|
@@ -4,18 +4,6 @@ text := import("text")
|
|
|
4
4
|
self.defineOutputs("result")
|
|
5
5
|
|
|
6
6
|
self.body(func(args) {
|
|
7
|
-
content
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
isEmpty := false
|
|
11
|
-
if mode == "raw" {
|
|
12
|
-
// No header line (e.g. FASTA): empty content means no data
|
|
13
|
-
isEmpty = text.trim_space(content) == ""
|
|
14
|
-
} else if mode == "headerOnly" {
|
|
15
|
-
// File has a header line (e.g. TSV with added header): empty means <= 1 line
|
|
16
|
-
lines := text.split(text.trim_space(content), "\n")
|
|
17
|
-
isEmpty = len(lines) <= 1
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
return { result: isEmpty }
|
|
7
|
+
// 'content' is the stdout of the check-software (already a "true"/"false" string)
|
|
8
|
+
return { result: text.trim_space(string(args.content.getData())) == "true" }
|
|
21
9
|
})
|
package/src/main.tpl.tengo
CHANGED
|
@@ -16,6 +16,7 @@ processOutputsTpl := assets.importTemplate(":process-outputs")
|
|
|
16
16
|
checkContentEmptyTpl := assets.importTemplate(":check-content-empty")
|
|
17
17
|
|
|
18
18
|
prepareFastaSw := assets.importSoftware("@platforma-open/milaboratories.immune-assay-data.prepare-fasta:main")
|
|
19
|
+
checkContentEmptySw := assets.importSoftware("@platforma-open/milaboratories.immune-assay-data.check-content-empty:main")
|
|
19
20
|
|
|
20
21
|
wf.prepare(func(args){
|
|
21
22
|
bundleBuilder := wf.createPBundleBuilder()
|
|
@@ -103,15 +104,23 @@ wf.body(func(args) {
|
|
|
103
104
|
arg("--seq_col").arg("sequence").
|
|
104
105
|
arg("--id_col").arg("seqId").
|
|
105
106
|
saveFile("output.fasta").
|
|
106
|
-
saveFileContent("output.fasta").
|
|
107
107
|
run()
|
|
108
108
|
clonesFasta := clonesFastaRun.getFile("output.fasta")
|
|
109
|
-
clonesFastaContent := clonesFastaRun.getFileContent("output.fasta")
|
|
110
109
|
|
|
111
110
|
// Check if clones are empty before running mmseqs2
|
|
111
|
+
checkClonesRun := exec.builder().
|
|
112
|
+
software(checkContentEmptySw).
|
|
113
|
+
arg("-i").arg("input.file").
|
|
114
|
+
arg("-n").arg("1").
|
|
115
|
+
addFile("input.file", clonesFasta).
|
|
116
|
+
saveStdoutContent().
|
|
117
|
+
mem("8GiB").
|
|
118
|
+
cpu(1).
|
|
119
|
+
inLightQueue().
|
|
120
|
+
run()
|
|
121
|
+
|
|
112
122
|
checkClonesResult := render.create(checkContentEmptyTpl, {
|
|
113
|
-
content:
|
|
114
|
-
mode: "raw"
|
|
123
|
+
content: checkClonesRun.getStdoutContent()
|
|
115
124
|
})
|
|
116
125
|
emptyClonesInput := checkClonesResult.output("result")
|
|
117
126
|
|