nextstrain / nextstrain.org

The Nextstrain website
https://nextstrain.org
GNU Affero General Public License v3.0
87 stars 49 forks source link

Core builds should all have matching repos #41

Open trvrb opened 4 years ago

trvrb commented 4 years ago

"Core" builds on nextstrain.org (those that appear as primary tiles) are builds maintained by the Nextstrain dev team. Each of these core builds should have a matching GitHub repo under the nextstrain org with a matching name, ie nextstrain.org/zika should have a repo at https://github.com/nextstrain/zika. This repo should exactly generate Auspice JSONs visible live at nextstrain.org. There are a few examples that don't fit this pattern:

https://nextstrain.org/flu/seasonal

This is built from https://github.com/nextstrain/seasonal-flu. For consistency and clarity, the nextstrain.org URL should be updated to https://nextstrain.org/seasonal-flu. This will require adding a redirect from https://nextstrain.org/flu and https://nextstrain.org/flu/seasonal to https://nextstrain.org/seasonal-flu. Responsible: @trvrb.

Decided to keep this as is. We just want a build repo within the nextstrain org. It doesn't have to perfectly match naming.

https://nextstrain.org/flu/avian

This is built from https://github.com/nextstrain/avian-flu. For consistency and clarity, the nextstrain.org URL should be updated to https://nextstrain.org/avian-flu. This will require adding a redirect from https://nextstrain.org/flu/avian to https://nextstrain.org/avian-flu. Responsible: @trvrb.

Decided to keep this as is. We just want a build repo within the nextstrain org. It doesn't have to perfectly match naming.

https://nextstrain.org/WNV

This is built from https://github.com/grubaughlab/WNV-nextstrain. For consistency and clarity, the live build should be sourced from https://github.com/nextstrain/WNV. This requires inviting Nate Grubaugh, @grubaughlab and @andersonbrito to be collaborators on this repository.

Alternatively, we move this out of "core" builds and make grubaughlab a Nextstrain Group. This would shift the nextstrain.org URL to https://nextstrain.org/groups/grubaughlab/WNV. And in this case, we'd redirect nextstrain.org/WNV to nextstrain.org/groups/grubaughlab/WNV. Responsible: @jameshadfield / @grubaughlab. (Note that we haven't decided to call these "groups" yet. Could be "hub" or something else, "groups" is a stand-in.)

This is really a decision for @jameshadfield and @grubaughlab.

(WNV caps still bugs me here, but this ship has sailed...)

Decided that least confusing scenario is keeping https://nextstrain.org/WNV paired with https://github.com/grubaughlab/WNV-nextstrain, but that this is not preferred behavior going forward.

https://nextstrain.org/tb

I'm not sure what this is built from. Maybe https://github.com/nextstrain/tb but with a different data source? Live https://nextstrain.org/tb redirects to https://nextstrain.org/tb/global and gives 999 samples from all over the globe, while https://github.com/nextstrain/tb builds an example dataset of 149 samples from Northern Canada. I'd recommend that the repo https://github.com/nextstrain/tb be revised to build https://nextstrain.org/tb/global and a new https://github.com/nextstrain/tb-tutorial created that gives the Northern Canada example. Responsible: @emmahodcroft.

https://nextstrain.org/enterovirus

I'm not sure what this is built from. I know that @emmahodcroft has been maintaining this. At your leisure, could you move this build to https://github.com/nextstrain/enterovirus? Responsible: @emmahodcroft.

jameshadfield commented 4 years ago

Alternatively, we move ... out of "core" builds and make ... a Nextstrain Group. This would shift the nextstrain.org URL to https://nextstrain.org/groups/...

@trvrb is this the URL structure we've decided, or still just a proposal? As far as i'm aware it's not yet in the nextstrain.org codebase (It wouldn't be hard to implement, but it does have consequences for locally-hosted narratives etc)

trvrb commented 4 years ago

No. Just a hypothetical. I was using "groups" as stand-in. I'm sold on general direction, but we haven't decided on a name. (I'll edit issue to make this clear)

tsibley commented 4 years ago

For consistency and clarity, the nextstrain.org URL should be updated to https://nextstrain.org/seasonal-flu. … For consistency and clarity, the nextstrain.org URL should be updated to https://nextstrain.org/avian-flu.

This seems like a case where absolute consistency erodes existing clarity and usability, especially given the widespread usage of the nextstrain.org/flu/… URLs.

I think what's most important is that each core build on nextstrain.org has a corresponding repo on github.com/nextstrain. I don't think it's as important that the name matches exactly, particularly once we start linking to the core build source from the sidebar (like we do for community builds already).

If absolute consistency is desired, what about renaming the repos instead? This would affect many fewer existing references and expectations. In this case, nextstrain/{avian,seasonal}-flu could become nextstrain/flu-{avian,seasonal}. GitHub will perform redirects for the old names.

trvrb commented 4 years ago

Thanks for the feedback Tom. I'm torn here. I don't think existing nextstrain.org/flu/seasonal and nextstrain.org/flu/avian are much of an issue, but I was in part concerned about what starts happening when we include say "swine-flu" or "all-flu". But maybe even these are fine if each build links out to a corresponding repo. I'll leave these be for the moment.

grubaughlab commented 4 years ago

Sorry for jumping in late:

https://nextstrain.org/WNV

This is built from https://github.com/grubaughlab/WNV-nextstrain. For consistency and clarity, the live build should be sourced from https://github.com/nextstrain/WNV. This requires inviting Nate Grubaugh, @grubaughlab https://github.com/grubaughlab and @andersonbrito https://github.com/andersonbrito to be collaborators on this repository.

Alternatively, we move this out of "core" builds and make grubaughlab a Nextstrain Group. This would shift the nextstrain.org URL to https://nextstrain.org/groups/grubaughlab/WNV. And in this case, we'd redirect nextstrain.org/WNV to nextstrain.org/groups/grubaughlab/WNV.

This is really a decision for @grubaughlab https://github.com/grubaughlab.

I don't really care how this is done - I think originally WNV was moved out of github.com/nextstrain so that our tinkering wouldn't screw anything up ;)

My only concern with moving it is that we just published a paper with links that go to https://github.com/grubaughlab/WNV-nextstrain and nextstrain.org/WNV. This means that either option 1 (moving live build to https://github.com/nextstrain/WNV) or option 2 (moving WNV nextstrain out of core and into a group) requires redirecting URLs so that the links in the paper are not broken. While this is not impossible to overcome, just wanted to make sure that was taken into account.

I get that we should come to a consensus on this soon considering our desire to expand the grubaughlab nextstrain portfolio.

On Mon, Nov 11, 2019 at 7:33 PM Trevor Bedford notifications@github.com wrote:

Thanks for the feedback Tom. I'm torn here. I don't think existing nextstrain.org/flu/seasonal and nextstrain.org/flu/avian are much of an issue, but I was in part concerned about what starts happening when we include say "swine-flu" or "all-flu". But maybe even these are fine if each build links out to a corresponding repo. I'll leave these be for the moment.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/nextstrain/nextstrain.org/issues/41?email_source=notifications&email_token=AKIOAJAJVOOCT5LUB4M2LWTQTH2T7A5CNFSM4JLJ5UK2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDYTUJA#issuecomment-552679972, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKIOAJEQH4GAW5BD2WRIHOLQTH2T7ANCNFSM4JLJ5UKQ .

-- Nathan D. Grubaugh, Ph.D., M.S. *Assistant Professor | *Department of Epidemiology of Microbial Diseases Yale School of Public Health 60 College Street, Suite 608 | New Haven, CT 06520-8034 203.737.5869 | nathan.grubaugh@yale.edu FIRST.LAST@yale.edu

Website: grubaughlab.com Twitter: @NathanGrubaugh https://twitter.com/NathanGrubaugh

jameshadfield commented 4 years ago

I'm ambivalent about enforcing this. I think that the work behind exporting build-urls and displaying them in auspice will be much more effective than making sure the repo exists with the same name in the nextstrain org.

@grubaughlab re: URL redirects. Yes 💯 -- i'll make sure nothing breaks if we do change things.

Re: WNV. Currently I don't think it's worth moving to the nextstrain org given that there's a upcoming possibility of using the "groups" functionality, where the natural place for the build repo to live would then be where it currently is now! I think we should amend the readme of https://github.com/nextstrain/WNV/ to indicate that this build has moved.

trvrb commented 4 years ago

Okay. Thank you @grubaughlab and thank you @jameshadfield. I think the path of least confusion is to keep the canonical repo for https://nextstrain.org/WNV at https://github.com/grubaughlab/WNV-nextstrain and update the readme for https://github.com/nextstrain/WNV to make this clear. I would like this to be an outlier however and try to keep forthcoming repos associated with "core" builds on the nextstrain GitHub org.

I'm going to edit the original issue to make these decisions more clear.

jameshadfield commented 4 years ago

https://github.com/nextstrain/WNV now updated to point to the @grubaughlab repo 👍

emmahodcroft commented 4 years ago

TB - yes, I'll have to look into. I'll get onto this in the next few weeks - a bit swamped with EV stuff at the moment.

EV-D68 - I'm cleaning up this pipeline at the moment as part of two papers. There will be one repository that will include both VP1 and the full-genome runs. I'll move it to the appropriate Nextstrain place when it's finished.

trvrb commented 4 years ago

Awesome! Thanks so much @emmahodcroft.