@platforma-open/milaboratories.mixcr-shm-trees.workflow 3.5.0 → 3.5.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.
@@ -1,5 +1,5 @@
1
1
 
2
- > @platforma-open/milaboratories.mixcr-shm-trees.workflow@3.5.0 build /home/runner/work/mixcr-shm-trees/mixcr-shm-trees/workflow
2
+ > @platforma-open/milaboratories.mixcr-shm-trees.workflow@3.5.1 build /home/runner/work/mixcr-shm-trees/mixcr-shm-trees/workflow
3
3
  > rm -rf dist && pl-tengo check && pl-tengo build
4
4
 
5
5
  Processing "src/export-settings.lib.tengo"...
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @platforma-open/milaboratories.mixcr-shm-trees.workflow
2
2
 
3
+ ## 3.5.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 089219e: dependency upgrade
8
+
3
9
  ## 3.5.0
4
10
 
5
11
  ### Minor Changes
@@ -1,18 +1,18 @@
1
1
  ll := import("@platforma-sdk/workflow-tengo:ll")
2
2
  text := import("text")
3
3
 
4
- // ==============================================
5
- //
6
- // Every function in this file will return:
7
- // pfconvParams - params to run xsv.importFileMap on exported files
8
- // cmdArgs - additional args for MiXCR to specify what fields to extract
9
- //
10
- // ==============================================
11
-
12
- // TODO: TMP
4
+
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
13
  allowNA := true
14
14
 
15
- // export of threes whithout nodes
15
+
16
16
  shmTreeTableOptions := func(dataDescription) {
17
17
  axes := []
18
18
  columns := []
@@ -300,7 +300,7 @@ shmTreeTableOptions := func(dataDescription) {
300
300
  }
301
301
  }
302
302
 
303
- // export data that is uniq for node
303
+
304
304
  shmTreeNodesTableOptions := func(dataDescription) {
305
305
  axes := []
306
306
  columns := []
@@ -361,7 +361,7 @@ shmTreeNodesTableOptions := func(dataDescription) {
361
361
  allowNA: false,
362
362
  spec: {
363
363
  name: "pl7.app/dendrogram/isObserved",
364
- // TODO change to Boolean when it will be supported
364
+
365
365
  valueType: "String",
366
366
  annotations: {
367
367
  "pl7.app/label": "Is observed in data",
@@ -811,8 +811,8 @@ shmTreeNodesTableOptions := func(dataDescription) {
811
811
  }
812
812
  }
813
813
 
814
- // export data that is unique for clones, but not unique for a node
815
- // (different clones could be in the same topology node, for example, different time points)
814
+
815
+
816
816
  shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
817
817
  donorColumnSpec := donorColumn.spec
818
818
 
@@ -870,8 +870,8 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
870
870
  cmdArgs = append(cmdArgs, "-fileName")
871
871
  axes = append(axes, {
872
872
  column: "fileName",
873
- // in case of single cell trees, not all subtrees will be filled for nodes with observed
874
- // allowNA: true,
873
+
874
+
875
875
  preProcess: [
876
876
  {
877
877
  type: "regexpReplace",
@@ -892,13 +892,13 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
892
892
  axes = append(axes, {
893
893
  column: "cloneId",
894
894
  id: "clone-id",
895
- // allowNA: true,
896
- // filtering off records without clones because we are not interested in them here
895
+
896
+
897
897
  filterOutRegex: "^$",
898
898
  spec: {
899
899
  name: "pl7.app/vdj/cloneId",
900
900
  type: "Long",
901
- // TODO domain with blockId
901
+
902
902
  annotations: {
903
903
  "pl7.app/label": "Clone id",
904
904
  "pl7.app/table/visibility": "default",
@@ -1135,7 +1135,7 @@ shmTreeNodesUniqueIsotypeTableOptions := func(dataDescription) {
1135
1135
  }
1136
1136
  }
1137
1137
 
1138
- // to use the file as a library, we should explicitly export functions
1138
+
1139
1139
  export ll.toStrict({
1140
1140
  shmTreeTableOptions: shmTreeTableOptions,
1141
1141
  shmTreeNodesTableOptions: shmTreeNodesTableOptions,
@@ -7,19 +7,19 @@ json := import("json")
7
7
  _P_COLUMN_DATA_RESOURCE_MAP := { Name: "PColumnData/ResourceMap", Version: "1" }
8
8
 
9
9
  groupDataByDonorId := func(donorColumn, datasets) {
10
- // we need to form a pColumn with two axes:
11
- // axes[0]: donorId
12
- // axes[1]: sampleId
13
- // axes[2]: mixcrclonotypingBlockId
14
- // value: fileRef resource
15
-
16
- // we have:
17
- // column of donorIds:
18
- // axes[0]: sampleId
19
- // value: donorId
20
- // several columns of clns:
21
- // axes[0]: sampleId
22
- // value: fileRef resource
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+
20
+
21
+
22
+
23
23
 
24
24
  donorColumnSpec := donorColumn.spec
25
25
 
@@ -30,7 +30,7 @@ groupDataByDonorId := func(donorColumn, datasets) {
30
30
  name: "mixcr.com/clns",
31
31
  valueType: "File",
32
32
 
33
- // annotations and domain could differ between datasets
33
+
34
34
  axesSpec: [
35
35
  {
36
36
  name: donorColumnSpec.name,
@@ -49,20 +49,20 @@ groupDataByDonorId := func(donorColumn, datasets) {
49
49
  ]
50
50
  }, { removeUndefs: true })
51
51
 
52
- // creating sample to donor map
52
+
53
53
 
54
54
  sampleToDonor := {}
55
55
 
56
- // columns with meta could be fetched as data directly
56
+
57
57
  for k, v in donorColumn.data.getDataAsJson()["data"] {
58
58
  sampleId := json.decode(k)[0]
59
59
  sampleToDonor[sampleId] = v
60
60
  }
61
61
 
62
- // build pColumn by hand
62
+
63
63
  dataBuilder := smart.structBuilder(_P_COLUMN_DATA_RESOURCE_MAP, json.encode({ keyLength: 3 }))
64
64
 
65
- // collect all the clns files that we have into pColumn
65
+
66
66
  for clonotypingBlockId, dataset in datasets {
67
67
  for sKey, fileRef in dataset.data.inputs() {
68
68
  sampleId := json.decode(sKey)[0]
@@ -77,7 +77,7 @@ groupDataByDonorId := func(donorColumn, datasets) {
77
77
  }
78
78
  }
79
79
 
80
- // to use the file as a library, we should explicitly export functions
80
+
81
81
  export ll.toStrict({
82
82
  groupDataByDonorId: groupDataByDonorId
83
83
  })
@@ -4,7 +4,7 @@ assets := import("@platforma-sdk/workflow-tengo:assets")
4
4
  json := import("json")
5
5
  paggregateSw := assets.importSoftware("@platforma-open/milaboratories.software-ptransform:main")
6
6
 
7
- //// aggregating by-nodes output to make it uniquely addressable by it's native key
7
+
8
8
  ensureUniqueness := func(inputTsv, pfConvParams, ...aggParams) {
9
9
  keyColumns := []
10
10
  for axis in pfConvParams.axes {
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,20 +1,22 @@
1
1
  {
2
2
  "name": "@platforma-open/milaboratories.mixcr-shm-trees.workflow",
3
- "version": "3.5.0",
3
+ "version": "3.5.1",
4
4
  "type": "module",
5
5
  "description": "Tengo-based template",
6
6
  "//": {
7
7
  "build": "node ./scripts/build-static.mjs src/pfconv_params.json src/pfconv_params.lib.tengo && rm -rf dist && pl-tengo check && pl-tengo build && ./create_tags.sh"
8
8
  },
9
+ "dependencies": {
10
+ "@platforma-sdk/workflow-tengo": "^3.1.0"
11
+ },
9
12
  "devDependencies": {
10
- "@platforma-sdk/tengo-builder": "^1.17.5",
11
- "@platforma-sdk/workflow-tengo": "^2.11.0",
12
- "@milaboratories/software-pframes-conv": "^2.1.9",
13
- "@platforma-open/milaboratories.software-small-binaries": "^1.15.7",
13
+ "@platforma-sdk/tengo-builder": "^2.0.2",
14
+ "@milaboratories/software-pframes-conv": "^2.1.20",
15
+ "@platforma-open/milaboratories.software-small-binaries": "^1.15.19",
14
16
  "@platforma-open/milaboratories.software-mixcr": "4.7.0-139-develop",
15
17
  "@platforma-open/milaboratories.software-mitool": "2.3.1-5-main",
16
- "@platforma-open/milaboratories.software-ptransform": "^1.1.1",
17
- "@platforma-sdk/test": "^1.22.40",
18
+ "@platforma-open/milaboratories.software-ptransform": "^1.3.1",
19
+ "@platforma-sdk/test": "^1.25.0",
18
20
  "vitest": "^2.1.8",
19
21
  "typescript": "~5.6.3"
20
22
  },