Skip to content

GA fails on macOS due to Failed spawning readFilesCommand #2663

@eboileau

Description

@eboileau

I currently have no easy way to test STAR on macOS other than through GitHub Actions for my package. I'm currently updating supported Python versions. The first few lines of my workflow look like:

jobs:
  install-and-test:
    runs-on: ${{matrix.os}}
    defaults:
      run:
        shell: bash -l {0}
    strategy:
      fail-fast: false
      matrix:
        os: [ubuntu-latest, macos-latest]
        python-version: ["3.11", "3.12", "3.13"]
    steps:
      - uses: actions/checkout@v5
      - uses: conda-incubator/setup-miniconda@v3

This worked before (3.7, 3.8, 3.9, and 3.10), although at some point I had to run legacy versions on Intel CPUs by forcing macos-13, instead of macos-latest.

STAR is installed

star                                  2.7.11b          haf7d672_7             bioconda

but it systematically fails to map under macOS (macos-15-arm64, I also tried macos-14-arm64, and the deprecated macos-13). Linux is fine, all tests complete successfully.

I include the relevant traceback below for one macOS run:

EXITING: because of fatal EXECUTION error: Failed spawning readFilesCommand
2: No such file or directory

Sep 23 13:08:53 ...... FATAL ERROR, exiting
Traceback (most recent call last):
  File "/Users/runner/miniconda3/envs/rpbp/bin/create-base-genome-profile", line 7, in <module>
    sys.exit(main())
             ^^^^^^
  File "/Users/runner/miniconda3/envs/rpbp/lib/python3.12/site-packages/rpbp/orf_profile_construction/create_base_genome_profile.py", line 243, in main
    shell_utils.call_if_not_exists(
  File "/Users/runner/miniconda3/envs/rpbp/lib/python3.12/site-packages/pbiotools/misc/shell_utils.py", line 366, in call_if_not_exists
    ret_code = check_call(cmd, call=call, raise_on_error=raise_on_error)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/runner/miniconda3/envs/rpbp/lib/python3.12/site-packages/pbiotools/misc/shell_utils.py", line 202, in check_call
    return check_call_step(cmd, call=call, raise_on_error=raise_on_error)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/runner/miniconda3/envs/rpbp/lib/python3.12/site-packages/pbiotools/misc/shell_utils.py", line 184, in check_call_step
    raise subprocess.CalledProcessError(ret_code, cmd)
subprocess.CalledProcessError: Command 'STAR --runThreadN 1 --genomeDir /private/var/folders/q0/wmf37v850txck86cpnvwm_zw0000gn/T/pytest-of-runner/pytest-0/data0/c-elegans-chrI-example/WBcel235.79.chrI/star-index --sjdbGTFfile /private/var/folders/q0/wmf37v850txck86cpnvwm_zw0000gn/T/pytest-of-runner/pytest-0/data0/c-elegans-chrI-example/input/WBcel235.79.chrI.gtf --readFilesIn /private/var/folders/q0/wmf37v850txck86cpnvwm_zw0000gn/T/pytest-of-runner/pytest-0/data0/c-elegans-chrI-example/without-rrna/c-elegans-rep-1.fastq.gz  --readFilesCommand gzcat --limitBAMsortRAM 2147483648 --alignIntronMin 20 --alignIntronMax 100000 --outFilterMismatchNmax 1 --outFilterMismatchNoverLmax 0.04 --outFilterType BySJout --outFilterIntronMotifs RemoveNoncanonicalUnannotated --outSAMattributes AS NH HI nM MD --outSAMtype BAM SortedByCoordinate --sjdbOverhang 33 --seedSearchStartLmaxOverLread 0.5 --winAnchorMultimapNmax 100 --outFileNamePrefix /private/var/folders/q0/wmf37v850txck86cpnvwm_zw0000gn/T/pytest-of-runner/pytest-0/data0/c-elegans-chrI-example/without-rrna-mapping/c-elegans-rep-1' returned non-zero exit status 102.

I also tried with --readFilesCommand gunzip -c and --readFilesCommand "gunzip -c", without success. On Linux, I use --readFilesCommand zcat.

I don't really understand the error, whether STAR fails to read the readFilesCommand's argument, whether the argument is not a valid command on macOS, or if there is actually something else preventing it from spawning some process...

As far as I can tell, all previous steps run fine, the files and index should be there.

Any piece of advice is appreciated. Thanks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions