Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add perl-bio-searchio-hmmer #33805

Merged
merged 8 commits into from
Mar 22, 2022
Merged

Conversation

0xaf1f
Copy link
Contributor

@0xaf1f 0xaf1f commented Mar 20, 2022

Bio::SearchIO::hmmer was formerly part of the core bioperl distribution until version 1.7.3 when it and a bunch of other components were split out into separate development repositories (thanks @rpetit3 for digging this up), so later bioperl packages here caused problems for the prokka package (#33356), which uses this component.


Please read the guidelines for Bioconda recipes before opening a pull request (PR).

  • If this PR adds or updates a recipe, use "Add" or "Update" appropriately as the first word in its title.
  • New recipes not directly relevant to the biological sciences need to be submitted to the conda-forge channel instead of Bioconda.
  • PRs require reviews prior to being merged. Once your PR is passing tests and ready to be merged, please issue the @BiocondaBot please add label command.
  • Please post questions on Gitter or ping @bioconda/core in a comment.
Please use the following BiocondaBot commands:

Everyone has access to the following BiocondaBot commands, which can be given in a comment:

@BiocondaBot please update Merge the master branch into a PR.
@BiocondaBot please add label Add the please review & merge label.
@BiocondaBot please fetch artifacts Post links to CI-built packages/containers.
You can use this to test packages locally.

For members of the Bioconda project, the following command is also available:

@BiocondaBot please merge Upload built packages/containers and merge a PR.
Someone must approve a PR first!
This reduces CI build time by reusing built artifacts.

Also, the bot watches for comments from non-members that include @bioconda/<team> and will automatically re-post them to notify the addressed <team>.

This is needed for Bio::Index objects and classes that descend
from it for the creation of index files.
@0xaf1f
Copy link
Contributor Author

0xaf1f commented Mar 20, 2022

@bioconda/core, when a PR touches multiple packages, why doesn't the package builder use the newly built ones when building the remaining packages? It's not reasonable to have to wait for each change to hit the archive before submitting the next one.

There's an issue with a missing dependency in perl-bioperl-core. That package gets built first, then thrown away. Then, when perl-bio-searchio-hmmer is being built, the broken package from the archive is being pulled in and the package build has no chance. It should use the perl-bioperl-core that was just built...

@BiocondaBot
Copy link
Collaborator

Reposting for @0xaf1f to enable pings (courtesy of the BiocondaBot):

@bioconda/core, when a PR touches multiple packages, why doesn't the package builder use the newly built ones when building the remaining packages? It's not reasonable to have to wait for each change to hit the archive before submitting the next one.

There's an issue with a missing dependency in perl-bioperl-core. That package gets built first, then thrown away. Then, when perl-bio-searchio-hmmer is being built, the broken package from the archive is being pulled in and the package build has no chance. It should use the perl-bioperl-core that was just built...

@0xaf1f
Copy link
Contributor Author

0xaf1f commented Mar 20, 2022

Due to inadequacies of the builder here, I'm forced to make this 3 4 PRs instead of 1.

This module was split out of the main bioperl distribution in
version 1.7.3 (https://metacpan.org/dist/BioPerl/changes), but
is still needed by Prokka (bioconda#33356).
Now that Bio::SearchIO::hmmer is packaged, we can use it as part
of the latest bioperl distribution and there's no longer a need
for this pinning.

This reverts the workaround a32603c
in favor of resolving the underlying problem.
@0xaf1f
Copy link
Contributor Author

0xaf1f commented Mar 21, 2022

@dpryan79 I added the missing dependency on perl-test-most for perl-bio-searchio-hmmer to get rid of a bunch of the noise in the log (speaking of noise, the container doesn't seem to like C.UTF-8) and hopefully what I was saying before on gitter is more clear. I get what you said about the package build order being problematic, but this is an issue too:

When perl-bio-searchio-hmmer is being built (on its retry after perl-bioperl-core is successfully built), it's getting

01:10:42 BIOCONDA INFO (OUT)     perl-bioperl-core:           1.7.8-pl5321h9ee0642_0  bioconda

instead of the freshly built from just a few minutes prior

01:04:09 BIOCONDA INFO (ERR) [Mar 21 01:04:09] SOUT perl-bioperl-core  conda-bld/noarch::perl-bioperl-core-1.7.8-pl5321hdfd78af_1

which results in this subtle test failure:

01:11:45 BIOCONDA INFO (OUT) Test Summary Report
01:11:45 BIOCONDA INFO (OUT) -------------------
01:11:45 BIOCONDA INFO (OUT) t/LocalDB-Index.t      (Wstat: 256 Tests: 4 Failed: 1)
01:11:45 BIOCONDA INFO (OUT)   Failed test:  3
01:11:45 BIOCONDA INFO (OUT)   Non-zero exit status: 1
01:11:45 BIOCONDA INFO (OUT) Files=7, Tests=1166,  4 wallclock secs ( 0.10 usr  0.00 sys +  2.98 cusr  0.33 csys =  3.41 CPU)
01:11:45 BIOCONDA INFO (OUT) Result: FAIL
01:11:45 BIOCONDA INFO (OUT) Failed 1/7 test programs. 1/1166 subtests failed.

@dpryan79
Copy link
Contributor

@BiocondaBot please update

@0xaf1f
Copy link
Contributor Author

0xaf1f commented Mar 21, 2022

so it's a general conda solver problem to not pull in the latest build of a package? Or is it channel priority not preferring local over bioconda/conda-forge?

@0xaf1f
Copy link
Contributor Author

0xaf1f commented Mar 21, 2022

It looks like the mulled-build correctly picks up the new local packages, but the original build doesn't. Do you know why the two procedures behave differently?

@0xaf1f
Copy link
Contributor Author

0xaf1f commented Mar 22, 2022

@BiocondaBot please add label.

I'm still curious about why the regular build and mulled build don't resolve dependencies the same way.

@BiocondaBot BiocondaBot added the please review & merge set to ask for merge label Mar 22, 2022
@dpryan79
Copy link
Contributor

@0xaf1f The classic conda solver doesn't prioritize the most recent build, or even the most recent version. This has caused a LOT of headaches. Starting in conda 4.12 there's the option to use the mamba solver instead, which will try to use the highest build number and version, which should generally do more what people expect.

@dpryan79
Copy link
Contributor

@BiocondaBot please merge

@BiocondaBot
Copy link
Collaborator

I will attempt to upload artifacts and merge this PR. This may take some time, please have patience.

@0xaf1f
Copy link
Contributor Author

0xaf1f commented Mar 22, 2022

The classic conda solver doesn't prioritize the most recent build, or even the most recent version. This has caused a LOT of headaches. Starting in conda 4.12 there's the option to use the mamba solver instead, which will try to use the highest build number and version, which should generally do more what people expect.

Ah, got it. Many thanks for getting this working!

@BiocondaBot BiocondaBot merged commit c974978 into bioconda:master Mar 22, 2022
@0xaf1f 0xaf1f deleted the perl-bio-searchio-hmmer branch March 22, 2022 06:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
please review & merge set to ask for merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants