name: htseq_count_to_h5mu
namespace: mapping
scope: "public"
description: |
  Convert the htseq table to a h5mu.
authors:
  - __merge__: /src/authors/robrecht_cannoodt.yaml
    roles: [ author, maintainer ]
  - __merge__: /src/authors/angela_pisco.yaml
    roles: [ author ]
argument_groups:
  - name: Input
    arguments:
      - type: string
        name: --input_id
        required: true
        description: The obs index for the counts
        example: foo
        multiple: true
      - type: file
        name: --input_counts
        required: true
        description: The counts as a TSV file as output by HTSeq.
        example: counts.tsv
        multiple: true
      - type: file
        name: --reference
        required: true
        description: The GTF file.
        example: gencode_v41_star
  - name: Outputs
    arguments:
      - name: "--output"
        alternatives: [-o]
        direction: output
        type: file
        description: "Output h5mu file."
        required: true
        example: output.h5mu
    __merge__: [., /src/base/h5_compression_argument.yaml]

resources:
  - type: python_script
    path: script.py
test_resources:
  - type: python_script
    path: test.py
  - path: /resources_test/cellranger_tiny_fastq

engines:
- type: docker
  image: python:3.12-slim
  setup:
    - type: apt
      packages: 
        - procps
    - type: python
      packages:
        - gtfparse
    - type: python
      packages:
        - pyarrow~=18.0.0
      __merge__: [/src/base/requirements/anndata_mudata.yaml, .]

runners:
- type: executable
- type: nextflow
  directives:
    label: [ highmem, midcpu ]
