Apache

From APIDesign

(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
In autumn 2016 [[Oracle]] announced that it wants to donate [[NetBeans]] to [[wikipedia::Apache_Software_Foundation|Apache]] foundation. It is January 2017 and we are still donating. Right now there is a review of [[NetBeans]] sources in progress. Some repositories are reviewed (for example [http://hg.netbeans.org/html4j html4j] [[Mercurial]] repository) and a branch '''donation_review''' has been created there. The process isn't fast, but we are getting in there.
In autumn 2016 [[Oracle]] announced that it wants to donate [[NetBeans]] to [[wikipedia::Apache_Software_Foundation|Apache]] foundation. It is January 2017 and we are still donating. Right now there is a review of [[NetBeans]] sources in progress. Some repositories are reviewed (for example [http://hg.netbeans.org/html4j html4j] [[Mercurial]] repository) and a branch '''donation_review''' has been created there. The process isn't fast, but we are getting in there.
-
==== Conversion to [[Git]] ====
+
== Conversion to [[Git]] ==
[[Apache]] is using [[Git]] and that means we shall convert our [[Hg]] repositories to [[Git]] ones. Luckily, this is where the power of community shows! Emilian Bold, long time NetBeans community member, decided to do such conversion. As such we have 1:1 mapping between [http://hg.netbeans.org/release NetBeans Releases Repository] and its [https://github.com/emilianbold/netbeans-releases Git version]. Thanks Emilian! As the review isn't finished yet, and we are still using the [[Hg]] repository for daily development - Emilian synchronizes the repositories daily. All seems to work.
[[Apache]] is using [[Git]] and that means we shall convert our [[Hg]] repositories to [[Git]] ones. Luckily, this is where the power of community shows! Emilian Bold, long time NetBeans community member, decided to do such conversion. As such we have 1:1 mapping between [http://hg.netbeans.org/release NetBeans Releases Repository] and its [https://github.com/emilianbold/netbeans-releases Git version]. Thanks Emilian! As the review isn't finished yet, and we are still using the [[Hg]] repository for daily development - Emilian synchronizes the repositories daily. All seems to work.
 +
 +
Emilian was so kind that he also converted the [[Html4Java]] [[Hg]] repository [http://hg.netbeans.org/html4j html4j] to [https://github.com/emilianbold/netbeans-html4j Git one]. His work was so excellent that [[I]] decided to close all development in the old [[Hg]] repository and move it to [[Git]]. As such all changes for [[Html4Java]] are now happening at [https://github.com/jtulach/html-java-api] - until we find more suitable place.
 +
 +
==== [[NetBeans]] [[Git]] Repositories at [[Apache]] ====
 +
 +
Will all these repositories be hosted by [[Apache]]? I don't know, but [[I]] doubt. The [[Oracle]] review of the code reveals some problems (for example [http://hg.netbeans.org/html4j/rev/929563230c07 here]) and they need to be fixed. [[Oracle]] can then donate only the fixed code - e.g. not with the whole history.
 +
 +
However having source code without history is the best way to kill a project. We have to have the history. We have to have to do '''git blame''' and get reasonable results, otherwise the project becomes unmaintainable. Will [[Apache]] take the Emilian [[Git]] repositories? With the history? Or will [[Apache]] insist on starting from scratch? I am afraid, the latter is closer to reality.
 +
 +
Thus we have useful [[Git]] repositories by Emilian that we want to use for our work and official repositories hosted at [[Apache]]. Of course one can have both repositories next to each other locally and work in one and commit to the other, but such work requires significant [[doublethink]] and will be errorprone.

Revision as of 15:29, 13 January 2017

In autumn 2016 Oracle announced that it wants to donate NetBeans to Apache foundation. It is January 2017 and we are still donating. Right now there is a review of NetBeans sources in progress. Some repositories are reviewed (for example html4j Mercurial repository) and a branch donation_review has been created there. The process isn't fast, but we are getting in there.

Conversion to Git

Apache is using Git and that means we shall convert our Hg repositories to Git ones. Luckily, this is where the power of community shows! Emilian Bold, long time NetBeans community member, decided to do such conversion. As such we have 1:1 mapping between NetBeans Releases Repository and its Git version. Thanks Emilian! As the review isn't finished yet, and we are still using the Hg repository for daily development - Emilian synchronizes the repositories daily. All seems to work.

Emilian was so kind that he also converted the Html4Java Hg repository html4j to Git one. His work was so excellent that I decided to close all development in the old Hg repository and move it to Git. As such all changes for Html4Java are now happening at [1] - until we find more suitable place.

NetBeans Git Repositories at Apache

Will all these repositories be hosted by Apache? I don't know, but I doubt. The Oracle review of the code reveals some problems (for example here) and they need to be fixed. Oracle can then donate only the fixed code - e.g. not with the whole history.

However having source code without history is the best way to kill a project. We have to have the history. We have to have to do git blame and get reasonable results, otherwise the project becomes unmaintainable. Will Apache take the Emilian Git repositories? With the history? Or will Apache insist on starting from scratch? I am afraid, the latter is closer to reality.

Thus we have useful Git repositories by Emilian that we want to use for our work and official repositories hosted at Apache. Of course one can have both repositories next to each other locally and work in one and commit to the other, but such work requires significant doublethink and will be errorprone.

buy