dputhier / pygtftk

A python package and a set of shell commands to handle GTF files
GNU General Public License v3.0
45 stars 6 forks source link

Bioconda build #162

Closed dputhier closed 3 years ago

dputhier commented 3 years ago

Dear all, I'm facing an issue with Bioconda build. Initially I forgot to change the SHA and add billiard dependencie. Now everything is fixed and I have tested building using Bioconda Docker image. Unfortunately I still got this message ("No artifacts found on the most recent CircleCI build. Either the build failed or the recipe was blacklisted/skipped"). I must admit that I'm stuck... @guillaumecharbonnier any idea ? Best

https://github.com/bioconda/bioconda-recipes/pull/29083#issuecomment-863255282

guillaumecharbonnier commented 3 years ago

The meta.yaml still has :

  skip: True  # [py<36 or py>=38]

meaning it will skip build for python 3.8, then you force python 3.8 a few rows below. You should adjust the statement after the #, then remove the python ==3.8 requirement.

Regardless, I have no idea about the reason for blacklisting: https://github.com/bioconda/bioconda-recipes/blob/5cca17429f61426545dfde43bd8f903f1f8ed771/build-fail-blacklist#L122-L123 I hope it will solve itself once the meta.yaml is fixed, maybe by manually removing pygtftk from the blacklist

dputhier commented 3 years ago

Hum... This "skip: True" with a comment (that I thought was not interpreted) is rather un clear. I just got it.

So it means I should write:

    build:
      number: 2
      skip: True # [py<38 or py>38]
      script: {{ PYTHON }} -m pip install . --no-deps -vv

Then delete Python version in host statement

  host:
    - python ==3.8 # Delete "==3.8"
    - pip

and "run" statement

  run:
    - python ==3.8 # Delete "==3.8"

Thanks a lot @guillaumecharbonnier for your help. Best

guillaumecharbonnier commented 3 years ago

From other recipes in bioconda, I believe (not tested) you could use the more explicit:

  skip: True  # [not py38]
dputhier commented 3 years ago

Just to be sure. Here I want to skip every Python version, except py38. The idea is that (skip: True # [py<38 or py>38]) and ( skip: True # [not py38]) are equivalent and will both select Python 3.8 ?

guillaumecharbonnier commented 3 years ago

Yes

dputhier commented 3 years ago

Done.