BiocPy/GenomicRanges

bad version requirements leads to incompatibility with biocframe

Closed this issue · 3 comments

nsheff commented

In a fresh install, I'm currently getting this:

python
Python 3.11.6 (main, Nov  1 2023, 13:45:43) [GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import genomicranges
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.11/site-packages/genomicranges/__init__.py", line 18, in <module>
    from .GenomicRanges import GenomicRanges
  File "/usr/local/lib/python3.11/site-packages/genomicranges/GenomicRanges.py", line 16, in <module>
    from biocframe.types import SlicerArgTypes
ModuleNotFoundError: No module named 'biocframe.types'

This is on BiocFrame 0.5.1
Downgrading BiocFrame to 0.4.1 solves the problem.

Sorry about that, Just pushed a new tag (0.3.9) for the package that now fixes the version. We are actively developing a lot of the internals and upstream packages, we'll try to be more careful in the future.

Hi @nsheff, We just released a new version to genomic ranges that more closely follows bioconductor's genomicranges in design and implementation (with IRanges and interval operations). So the default constructor to the package has now changed. We still provide the from_pandas function for backwards compatibility. This release also uses NCLS as the underlying data structure to perform most of the interval overlap and search operations.

We can potentially also use AIList for these, but the documentation is hard to follow and the package is not published to PyPI (atleast I can't find it). If thats something you are interested in, we can have a quick conversation on this.

Closing this but, please reopen if you have any questions.