bioperl-live icon indicating copy to clipboard operation
bioperl-live copied to clipboard

new modules Bio::Tools::Alignment::Overview and Bio::DB::NextProt

Open prvst opened this issue 10 years ago • 18 comments

Some time ago I made the mistake of uploading to CPAN a module called Bio::Tools::Alignment::Overview, the module wasn't associated to bioperl but for some reason I decided to use the namespace anyway (yeah, I know...)

Now I'm organizing some projects and I decided to include the module to bioperl, so if you accept this pull request I will remove from PAUSE/CPAN the current module, so that you can upload it under bioperl.

Sorry for the noobish mistake =)

Cheers.

prvst avatar Sep 19 '13 19:09 prvst

I just uploaded a new module to deal with the NextProt Database (http://www.nextprot.org). The module is ready and has his own POD. The test file is there but not ready yet. Nevertheless the module seems to be working good.

prvst avatar Dec 07 '13 04:12 prvst

A small observation, the NextProt test file was not executed by TravisCI, since REST::Client module is missing: t/RemoteDB/NextProt.t .................. skipped: The optional module REST::Client (or dependencies thereof) was not installed The module would have to be included on Travis and bioperl dependencies.

fjossandon avatar Dec 07 '13 13:12 fjossandon

Yeah, the prereq should be added to the .travis.yml file. One problem: we are trying to slim down on modules (and dependencies) being added to bioperl-live; could this exist in a separate repo in the bioperl team space? Similar to Florent's Bio-Community?

cjfields avatar Dec 11 '13 22:12 cjfields

You mean to use the Bio::* namespace but leave the module outside BioPerl core? Sure! The Bio::Tools::Alignment::Overview module is already published like that, I can do the same with the Bio::DB::NextProt module.

prvst avatar Dec 12 '13 16:12 prvst

That's basically it. This leaves the core fairly lean, and we can make it leaner by cleaving out other modules with their own dependencies.

cjfields avatar Dec 13 '13 20:12 cjfields

OK, sounds great! Fell free to close the pull request. Do you need help removing modules from the core? is there a list of modules to work somewhere? I could help with this issue.

prvst avatar Dec 13 '13 21:12 prvst

If the modules are added to core you can go ahead and remove them; if you want to preserve history, there is a nice writeup on the bioperl wiki on how to do this with git (thanks to @carandraug ):

http://www.bioperl.org/wiki/Using_Git/Advanced#Split_a_module_from_bioperl-live

cjfields avatar Dec 18 '13 05:12 cjfields

Forgot to mention, @Leprevost if you want to put this under the bioperl namespace we can do that. I can set up the repo and add you to the admins for that repo.

cjfields avatar Dec 18 '13 05:12 cjfields

Sounds good. I'm already taking @carandraug directives, looks pretty straightforward (although it takes some time because of the size).

How are you planning to organize the modules outside the core? Do you think its better to have a single repo with all the modules or individual repos for the high-level sections (DB, Align, Ontology, etc) ?

  • About the ones I pushed (Bio::Tools::Alignment::Overview and Bio::DB::NextProt) they are already on CPAN.

prvst avatar Dec 18 '13 13:12 prvst

Individual repos. I suppose we could technically rearrange everything within one repo, but I think it would get hairy very quickly. I think we can (for developers) create a simple git checkout with submodules or similar, though submodules are problematic as they are a fixed checkout, e.g. don't stay in sync with master branch.

On Wed, Dec 18, 2013 at 7:58 AM, Felipe Leprevost [email protected]:

Sounds good. I'm already taking @carandraughttps://github.com/carandraugdirectives, looks pretty straightforward (although it takes some time because of the size).

How are you planning to organize the modules outside the core? Do you think its better to have a single repo with all the modules or individual repos for the high-level sections (DB, Align, Ontology, etc) ?

  • About the ones I pushed (Bio::Tools::Alignment::Overview and Bio::DB::NextProt) they are already on CPAN.

— Reply to this email directly or view it on GitHubhttps://github.com/bioperl/bioperl-live/pull/61#issuecomment-30843108 .

cjfields avatar Dec 18 '13 19:12 cjfields

I liked the idea of having separated individual repos, I believe that this way will be more organized and more easily handled by people who wants or need to make changes to the code.

I'm not sure about using checkouts from the core for the submodules, never worked this way. Nevertheless we ca arrange that too you you like.

prvst avatar Dec 19 '13 18:12 prvst

Hi Chris,

I picked one module from the Bioperl-live list and I did what the tutorial fro @carandraug tells. The module is Bio::Align::AlignI and its now on this repository (https://github.com/Leprevost/Bio-Align-AlignI). I selected this module because it looked simple enough to see how the migration process is.

Apparently the commit history was ported correctly, i think everything is OK, what do you think?

What should be the next step?

Cheers

P.S. (happy new year!)

prvst avatar Jan 22 '14 03:01 prvst

just a reminder. cheers

prvst avatar Mar 17 '14 19:03 prvst

@cjfields : I locally downloaded this PR, merged it to master and executed the test suite. The merge produced no conflicts, and all tests (including the ones added in this PR) executed without problems. The only thing is that this module requires REST::Client, so that would need to be added to Build %recommends.

Unless there is another concern, I think this is good to merge. ;)

fjossandon avatar Jul 08 '16 18:07 fjossandon

hey, nice to see some feedback after so long =)

prvst avatar Jul 11 '16 03:07 prvst

Hi @prvst . I thought the plan was to release it as a separate set of modules to CPAN (see https://github.com/bioperl/bioperl-live/pull/61#issuecomment-30439081), hence the long silence. Well, that and I've been ridiculously busy.

I see that it requires REST::Client and GD::Simple, which adds at least two dependencies to the distribution, which is the key problem since we're trying to reduce dependencies in core, a key point to the next release series. We're more than happy to make a new repo for you in the bioperl namespace and set you up with commit rights for that as well as the main repo. Let us know.

cjfields avatar Jul 11 '16 04:07 cjfields

I notice that each of the two new pieces of functionality consist of essentially a single module (and file, plus the tests of course), and not because everything's crammed into one file but because they are fairly small and self-contained.

@cjfields I'm wondering what our strategy here is. Having everything in separate modules / packages even if they are exceedingly small is neither a bad one, nor one unheard of - that's basically what the nodeJS ecosystem prides itself for. But are we actually moving to a nodeJS-like strategy? It'd be a rather dramatic (to put it lightly) change from where we're at now.

If the nodeJS-like ecosystem isn't what we're going for, I'm not sure that these two modules warrant their own repositories. They would add to the dependencies, yes, but only optional ones. I.e., by including these we aren't forcing their installation on anyone but those who want to use these modules. I'd be OK with that.

hlapp avatar Jul 11 '16 13:07 hlapp

@hlapp The purpose is really to place more power and responsibility with the original developers, both so they can make changes to their own code as well as make independent releases w/o being tied to the BioPerl core module releases.

This doesn't mean they would need to exist independently (they could easily be part of the BioPerl org, so other devs can help contribute and make releases). But I would like to both reduce the maintenance pressure on the core modules, which see infrequent releases, as well as enable others to both participate in the org and take a more direct ownership of their code.

We do have some precedence for this, with the bp-utils and Bio::Community projects, not to mention the BioPerl-network and DB code. Not to mention @lstein code for Gbrowse

cjfields avatar Jul 11 '16 14:07 cjfields

Hi all, we're almost at the 10 year mark for this pull request (which I think we can safely close). @prvst did you have any additional comments on it?

cjfields avatar Apr 14 '23 22:04 cjfields

We'll that's a shame, I was hoping to discover if GitHub has some sort of achievement badge for a 10 year old PR 😁.

No worries, Chris. Feel free to close.it.

Thanks.

prvst avatar Apr 18 '23 01:04 prvst