From a6f5fc4847b9391fbc42fd1cc17895d2075b3496 Mon Sep 17 00:00:00 2001 From: aiturbidemil Date: Sat, 15 Nov 2025 12:38:38 +0100 Subject: [PATCH 1/3] sdk update --- pnpm-lock.yaml | 70 ++++++++++++++++++++++++++++++++++++++++++--- pnpm-workspace.yaml | 2 +- 2 files changed, 67 insertions(+), 5 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a3f14c1..d748b56 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,8 +16,8 @@ catalogs: specifier: ^1.4.9 version: 1.4.11 '@platforma-sdk/block-tools': - specifier: ^2.6.16 - version: 2.6.16 + specifier: ^2.6.21 + version: 2.6.21 '@platforma-sdk/blocks-deps-updater': specifier: ^2.0.0 version: 2.0.0 @@ -95,7 +95,7 @@ importers: devDependencies: '@platforma-sdk/block-tools': specifier: 'catalog:' - version: 2.6.16 + version: 2.6.21 model: dependencies: @@ -108,7 +108,7 @@ importers: devDependencies: '@platforma-sdk/block-tools': specifier: 'catalog:' - version: 2.6.16 + version: 2.6.21 '@platforma-sdk/eslint-config': specifier: 'catalog:' version: 1.1.0(@eslint/js@9.23.0)(@stylistic/eslint-plugin@2.13.0(eslint@9.23.0)(typescript@5.5.4))(eslint-plugin-n@17.15.1(eslint@9.23.0))(eslint-plugin-vue@9.32.0(eslint@9.23.0))(eslint@9.23.0)(globals@15.14.0)(typescript-eslint@8.24.0(eslint@9.23.0)(typescript@5.5.4))(typescript@5.5.4) @@ -1122,12 +1122,18 @@ packages: '@milaboratories/pl-model-common@1.21.4': resolution: {integrity: sha512-k0dqRSWF2npDXEI00F+on6g/B6LDIOlRTJTZ5Pc+vyj9n4GvlR2lT93GKJwJXEx4jok8H//2FwZabC+EFxTYpQ==} + '@milaboratories/pl-model-common@1.21.6': + resolution: {integrity: sha512-PU+LYdpz3bxmdVrZyjGDzxRNBgMn4FJC/D+vxZjNCp+LjxCgQkQ2K9tBy0xlkOVG6pCfAY8QhavZJciZJZZgrQ==} + '@milaboratories/pl-model-middle-layer@1.8.34': resolution: {integrity: sha512-0VdpZ67nmX0bWjCjcCR0paGqzJleZ/1TVLdbK71gWuq2jwN6wmBA90t5rDAfRWj7Ju9RkUU7LR5QyuwB/L0OfQ==} '@milaboratories/pl-model-middle-layer@1.8.35': resolution: {integrity: sha512-fNYE4nWcmDn5CAK7IOwSR9htq10F7mPpfIunEcOHDXS1pSrPxc+QGiw6fJRWcV4KE8Qt55xfmmrl0zO/r2aCvg==} + '@milaboratories/pl-model-middle-layer@1.8.40': + resolution: {integrity: sha512-xwAhayvUYR1TmmIKtj/EOIc6TttvN18kXZcU0Ai/IfyjVqNw7GVPKywBLgD8Gt1yhg4Y8BTxilxpXTibRT3PCw==} + '@milaboratories/pl-tree@1.8.8': resolution: {integrity: sha512-EKXHZCs5G1lmpXNMzKcr60JF54k8FuZqhwQmFQSN8NRtRNkSTXy1BFIcP918cOpdSXKEUukNE0OrVbJdIY6zww==} engines: {node: '>=22.19.0'} @@ -1149,10 +1155,17 @@ packages: '@milaboratories/ts-helpers-oclif@1.1.30': resolution: {integrity: sha512-jBl6/pqsJMK+j1j+hTD9UyVHsxY8EZiVCdsVBHFgRtpTtzhSRvcUYQJVbMn5j3PifFEyDxShOICCce9RZ0umJA==} + '@milaboratories/ts-helpers-oclif@1.1.33': + resolution: {integrity: sha512-1200VRTW3L5GNvjAiBXrsbLnvMGycuiyXMa6WyY154wk8D3oERaOCpzUDNtTDIf+QnXmJNrc9GSlI4940eCl7A==} + '@milaboratories/ts-helpers@1.5.1': resolution: {integrity: sha512-o8w+/6leOpELVk/GN7+bKnTWgTiL+lsIKq/UDtRGNhk6hYIsKfE+vWHGoTswKMvgoqfA0C3cZQ2HjUvo4VDE+w==} engines: {node: '>=22.19.0'} + '@milaboratories/ts-helpers@1.5.4': + resolution: {integrity: sha512-Inpyk9sYn1e+59KwgAQW9uFBIR6hmMozDgTfOmz7sx38a2ZftBkYQtSCHwzztbV5tg8covugxbFEbpDKfDDF6A==} + engines: {node: '>=22.19.0'} + '@milaboratories/uikit@2.5.0': resolution: {integrity: sha512-977B+x3kmg1MXhekg4JpieXEyoNmmMxVwQKCbXQLokq4PtYNBzbVnL/T4XvDhEtmQel2bhYs4eeUhiqqAmhn9A==} @@ -1246,6 +1259,10 @@ packages: resolution: {integrity: sha512-a5eo8UJ5dV3E3Ps4W9Vv7C/qkuu10oM1F1YUiSeRAOFwBnlsY3RpEfCckQBbPftX6yFs5U0ctGGdTvCuCtg3hQ==} hasBin: true + '@platforma-sdk/block-tools@2.6.21': + resolution: {integrity: sha512-X5B094uOZF8QiSNQg7FhjhWtwpAHTmYBsiwwOVhfo5e0yd0x6DBns82Jp0wWwXvocv7VQnS4mYWoXCy6NVzIvw==} + hasBin: true + '@platforma-sdk/blocks-deps-updater@2.0.0': resolution: {integrity: sha512-cef5ysA011ub5bofbWQJ3EM9rZ7A4ixGMKhFIsF2VNwYrCu5XRHsayA6vDeFOBjX4Jnq9D0QztW0JUxXD73bpw==} hasBin: true @@ -6967,6 +6984,12 @@ snapshots: canonicalize: 2.1.0 zod: 3.23.8 + '@milaboratories/pl-model-common@1.21.6': + dependencies: + '@milaboratories/pl-error-like': 1.12.5 + canonicalize: 2.1.0 + zod: 3.23.8 + '@milaboratories/pl-model-middle-layer@1.8.34': dependencies: '@milaboratories/pl-model-common': 1.21.3 @@ -6981,6 +7004,13 @@ snapshots: utility-types: 3.11.0 zod: 3.23.8 + '@milaboratories/pl-model-middle-layer@1.8.40': + dependencies: + '@milaboratories/pl-model-common': 1.21.6 + remeda: 2.32.0 + utility-types: 3.11.0 + zod: 3.23.8 + '@milaboratories/pl-tree@1.8.8': dependencies: '@milaboratories/computable': 2.7.1 @@ -7009,11 +7039,21 @@ snapshots: '@milaboratories/ts-helpers': 1.5.1 '@oclif/core': 4.2.6 + '@milaboratories/ts-helpers-oclif@1.1.33': + dependencies: + '@milaboratories/ts-helpers': 1.5.4 + '@oclif/core': 4.2.6 + '@milaboratories/ts-helpers@1.5.1': dependencies: canonicalize: 2.1.0 denque: 2.1.0 + '@milaboratories/ts-helpers@1.5.4': + dependencies: + canonicalize: 2.1.0 + denque: 2.1.0 + '@milaboratories/uikit@2.5.0(typescript@5.5.4)': dependencies: '@milaboratories/helpers': 1.12.0 @@ -7168,6 +7208,28 @@ snapshots: - aws-crt - supports-color + '@platforma-sdk/block-tools@2.6.21': + dependencies: + '@aws-sdk/client-s3': 3.859.0 + '@milaboratories/pl-http': 1.2.0 + '@milaboratories/pl-model-common': 1.21.6 + '@milaboratories/pl-model-middle-layer': 1.8.40 + '@milaboratories/resolve-helper': 1.1.1 + '@milaboratories/ts-helpers': 1.5.4 + '@milaboratories/ts-helpers-oclif': 1.1.33 + '@oclif/core': 4.2.6 + canonicalize: 2.1.0 + lru-cache: 11.2.2 + mime-types: 2.1.35 + remeda: 2.32.0 + tar: 7.4.3 + undici: 7.16.0 + yaml: 2.8.1 + zod: 3.23.8 + transitivePeerDependencies: + - aws-crt + - supports-color + '@platforma-sdk/blocks-deps-updater@2.0.0': dependencies: yaml: 2.8.1 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index ddbbe1d..fc1f2c9 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -10,7 +10,7 @@ catalog: "@platforma-sdk/model": ^1.45.0 "@platforma-sdk/ui-vue": ^1.45.13 "@platforma-sdk/workflow-tengo": ^5.5.12 - "@platforma-sdk/block-tools": ^2.6.16 + "@platforma-sdk/block-tools": ^2.6.21 "@platforma-sdk/test": ^1.45.15 "@platforma-sdk/tengo-builder": ^2.3.3 "@platforma-sdk/package-builder": ^3.10.7 From 9b2aa8de4b452a577fe094eb05c37aca6081d3b6 Mon Sep 17 00:00:00 2001 From: aiturbidemil Date: Sat, 15 Nov 2025 12:41:55 +0100 Subject: [PATCH 2/3] updated metadata --- block/package.json | 3 ++- docs/description.md | 6 ++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/block/package.json b/block/package.json index d1a8759..987f36a 100644 --- a/block/package.json +++ b/block/package.json @@ -27,8 +27,9 @@ "title": "Rarefaction analysis", "logo": "file:../logos/block-logo.png", "url": "https://github.com/platforma-open/rarefaction", + "docs": "https://docs.platforma.bio/guides/vdj-analysis/rarefaction/", "support": "mailto:support@milaboratories.com", - "description": "Performs rarefaction analysis on clonotype data to assess species richness.", + "description": "Performs rarefaction analysis on clonotype data to assess repertoire diversity and compare clonotype richness across samples with different sequencing depths.", "longDescription": "file:../docs/description.md", "changelog": "file:../CHANGELOG.md", "tags": [ diff --git a/docs/description.md b/docs/description.md index 65c42e2..8783070 100644 --- a/docs/description.md +++ b/docs/description.md @@ -1,7 +1,5 @@ # Overview -Rarefaction is a technique used to assess species richness from the results of sampling. Specifically, it is used to compare the clonal diversity of immune repertoires of different sizes. +Performs rarefaction analysis on clonotype data from immune receptor repertoires (TCR or BCR) to assess repertoire diversity and compare clonotype richness across samples with different sequencing depths. Rarefaction is a statistical technique that estimates the expected number of unique clonotypes as a function of sampling depth, enabling fair comparison of diversity between repertoires of different sizes. -This block performs rarefaction analysis on clonotype data. It calculates the mean number of unique clonotypes for various subsampling depths for each sample, providing insight into the clonal richness of the repertoires. - -The analysis is based on a random subsampling of clonotypes from each repertoire at different depths. At each depth, the number of unique clonotypes is recorded. This process is repeated multiple times to generate a smooth rarefaction curve, which represents the expected number of unique clonotypes as a function of the number of sampled clonotypes. The shape of the curve can be used to compare the diversity of different repertoires. For example, a steeper curve indicates a higher diversity. +The block processes clonotype count data from VDJ processing blocks and performs random subsampling at multiple depths for each sample. At each subsampling depth, the number of unique clonotypes is recorded, and this process is repeated multiple times to generate smooth rarefaction curves representing the mean expected number of unique clonotypes. The shape and slope of these curves provide insights into repertoire diversity: steeper curves indicate higher diversity and suggest that additional sequencing would reveal more unique clonotypes, while plateauing curves indicate that most diversity has been captured at the current sequencing depth. From c3d0cdb43adb0cc8e2225f81a54a0e023db629a0 Mon Sep 17 00:00:00 2001 From: aiturbidemil Date: Sat, 15 Nov 2025 12:42:18 +0100 Subject: [PATCH 3/3] changeset --- .changeset/poor-ways-join.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/poor-ways-join.md diff --git a/.changeset/poor-ways-join.md b/.changeset/poor-ways-join.md new file mode 100644 index 0000000..74f343b --- /dev/null +++ b/.changeset/poor-ways-join.md @@ -0,0 +1,5 @@ +--- +'@platforma-open/milaboratories.rarefaction': patch +--- + +Block metadata updated.