Jack Tierney
12/01/2025, 3:54 PMIra Iosub
12/01/2025, 6:17 PMJack Tierney
12/01/2025, 7:05 PMIsaac W
12/01/2025, 10:23 PMJack Tierney
12/02/2025, 8:35 AMJonathan Manning
12/02/2025, 12:02 PMJonathan Manning
12/02/2025, 12:08 PMJonathan Manning
12/15/2025, 9:36 AMJack Tierney
12/15/2025, 9:41 AMJonathan Manning
12/15/2025, 9:52 AM⏺ This is a Python 3.10+ compatibility issue with the pyfasta dependency.
The key error is:
ImportError: cannot import name 'Mapping' from 'collections'
What's happening:
In Python 3.10, collections.Mapping was removed (it had been deprecated since Python 3.3). The correct import is now collections.abc.Mapping.
The dependency chain is:
1. RiboCode → pyfasta → tries from collections import Mapping → fails
The root cause:
The pyfasta package is outdated and hasn't been updated for Python 3.10+ compatibility. The conda environment is using Python 3.10, which breaks this old import pattern.
Potential fixes:
1. Pin Python < 3.10 in the environment.yml:
dependencies:
- python=3.9
- ribocode
2. Use a patched pyfasta - there may be a fork that fixes this, or the team could pin a specific version that works
3. Check if RiboCode has a newer version that uses an updated pyfasta or alternative dependency
This is a common problem with older bioinformatics tools that depend on unmaintained Python packages. Pinning to Python 3.9 is usually the quickest workaround.Jonathan Manning
12/15/2025, 9:53 AMJack Tierney
12/15/2025, 9:53 AMJonathan Manning
12/15/2025, 9:55 AMJonathan Manning
12/15/2025, 10:03 AMJonathan Manning
12/15/2025, 10:15 AMJack Tierney
12/15/2025, 10:19 AMversions.yml
Were you happy with how I defined the versions? example
there is no RiboCode --versionJonathan Manning
12/15/2025, 10:24 AM❯ docker run --rm <http://quay.io/biocontainers/ribocode:1.2.15--pyhfa5458b_0|quay.io/biocontainers/ribocode:1.2.15--pyhfa5458b_0> RiboCode --version
1.2.14Jack Tierney
12/15/2025, 10:25 AMJonathan Manning
12/15/2025, 10:25 AMJonathan Manning
12/15/2025, 10:27 AMJack Tierney
12/15/2025, 10:28 AMJack Tierney
12/15/2025, 10:38 AM1.2.15 so I guess the bioconda recipe should say 1.2.14 ?
although it doesnt look like theres a tag for that either.. 1.2.13 is the latest I seeJonathan Manning
12/15/2025, 10:41 AMJonathan Manning
12/15/2025, 10:42 AMJonathan Manning
12/15/2025, 10:43 AMJonathan Manning
12/15/2025, 10:54 AMJonathan Manning
12/15/2025, 11:00 AMJonathan Manning
12/15/2025, 1:32 PMSlackbot
12/15/2025, 1:32 PMconda config --add channels bioconda
conda config --add channels conda-forge
conda config --set channel_priority strict
See https://bioconda.github.io/#usageJack Tierney
12/15/2025, 2:18 PMJonathan Manning
12/15/2025, 2:24 PMJonathan Manning
12/15/2025, 2:26 PMJack Tierney
12/15/2025, 2:30 PMJonathan Manning
12/15/2025, 2:31 PMJonathan Manning
12/15/2025, 4:07 PMJack Tierney
12/15/2025, 4:08 PMJack Tierney
12/15/2025, 4:11 PMJonathan Manning
12/15/2025, 4:14 PMJonathan Manning
12/15/2025, 4:48 PMJack Tierney
12/16/2025, 8:46 AMJonathan Manning
12/16/2025, 9:00 AMJack Tierney
12/16/2025, 9:04 AMJonathan Manning
12/16/2025, 9:07 AMJack Tierney
12/16/2025, 9:08 AMJonathan Manning
12/16/2025, 9:10 AMJack Tierney
12/16/2025, 1:51 PMJonathan Manning
12/16/2025, 1:52 PMJack Tierney
12/16/2025, 1:53 PMJonathan Manning
12/16/2025, 1:55 PM[skip ci] in your commit messages it won't trigger CI. It's something I don't do enough, but it's handy for polar bear saving until you're done mucking aboutJack Tierney
12/16/2025, 1:55 PMJack Tierney
12/17/2025, 7:49 AMIra Iosub
12/17/2025, 8:23 AMJack Tierney
12/17/2025, 8:38 AMJonathan Manning
12/17/2025, 9:03 AMJack Tierney
12/17/2025, 9:06 AM-profile test_full . I copied the Ribotricer implementation so RiboCode isnt run in the basic testsJonathan Manning
12/17/2025, 9:09 AMtest_full, if one of you knows a nice clean public dataset we could use instead I don't see a problem with switching.Jack Tierney
12/17/2025, 9:12 AMCommand output:
Error, can not determine the P-site locations.Please check your input parameters and try again.
And the process fails because the outputs are missing. We could make the outputs optional?Jonathan Manning
12/17/2025, 9:12 AMJonathan Manning
12/17/2025, 9:13 AMJack Tierney
12/17/2025, 9:14 AMJack Tierney
12/17/2025, 9:15 AMmetaplots isn't happy with any read lengths it doesnt fail it just passes on a file with headers.Jonathan Manning
12/17/2025, 9:16 AMJack Tierney
12/17/2025, 9:17 AMJonathan Manning
12/17/2025, 9:18 AMJack Tierney
12/19/2025, 7:41 AMJonathan Manning
12/19/2025, 10:35 AMJonathan Manning
12/19/2025, 10:41 AM