openjdk-mirror / jdk

Single git repo mirroring a myriad of mercurial jdk repos
89 stars 40 forks source link

Empty Repo #1

Open kervinpierre opened 8 years ago

kervinpierre commented 8 years ago

Is this project stalled? Need any help with this?

gfredericks commented 8 years ago

I would love help, though the repo isn't actually empty -- it's just using lots of non-master branches. E.g., here is jdk8.

It's been a while since I was working on this and I can't recall if there was some event that obviated it -- i.e., before doing anything else it's worth verifying that the openjdk team aren't already doing something comparable.

gfredericks commented 8 years ago

If you would like to help, the pertinent code is in this repo.

I think it might work okay already, but I had the operational hurdle of not having tons of available disk space lying around to manage it.

kervinpierre commented 8 years ago

Hi,

Great!

Sure, I've been monitoring the list and had a few conversations with the Java Build team at Oracle. Short answer, they're not too interested in Git. They are playing with something on bitbucket but there's not priority on that and it has been ongoing for a while now.

One of the first things I thought I could contribute is maybe an AWS Build Server to run some of the scripts and builds on. Would that make sense?

I'm interested that one branch you sent https://github.com/openjdk-mirror/jdk/tree/jdk8u/jdk8u/master . The idea is that the most stable branch would always be available for browsing. So I'd love to help or pick up from there. How much space is necessary for this build? Or all the builds you are intested in?

Best regards, Kervin

gfredericks commented 8 years ago

A lot of the difficulty comes from the different branching models -- from what I recall, mercurial doesn't (or didn't some time ago) have a comparable feature, which lead the jvm developers to just have separate repos. My goal with this project was to actually merge all those separate repos into a single git repo with lots of branches. I think I more or less accomplished that, but there might have been some difficulty in getting them to share history rather than having 40 separate chains of commits.

Can't remember.

In any case I recall thinking I would need 20-40 gigs of steady state storage to avoid the very slow process of trying to re-download the mercurial repos every time I wanted to refresh something. There's probably a lot of ways to optimize this, but I didn't get into it.

I'm not opposed to setting one of the branches to be the default browsing branch on github, I just don't know enough about the project to know which branch would be the best fit for that.

This is kind of rambling, I guess because of the combination of the complexity of the topic and my ignorance of a lot of the details of mercurial & jvm development. But I'm happy to help answer whatever questions I can.

kervinpierre commented 8 years ago

Hi,

Great information, thanks.

I see you have https://github.com/openjdk-mirror/jdk7u-jdk . Would you be opposed to having the same for for the JDK8 master ( https://github.com/openjdk-mirror/jdk/tree/jdk8u/jdk8u/master ).

To be honest, to make sure we have an awesome sustainable branch, I was hoping to start with just the main master of the current stable. So currently, that would be jdk8 until jdk9 is released probably about this time next year.

This is just the first phase. I'm toying with the idea to have a web-based annotation system that allows annotating code files at the revisions and line number level. But this is a long-term, big picture, may-never-happen goal.

If you're not entirely opposed to promoting jdk8 to a toplevel project, then I'm guessing we can probably setup a smaller build server, that can double for a few other code-experiments. Or maybe a server with the same resources that can more quickly operate on the jdk8 branch.

Thoughts?

Best regards, Kervin