Re: splitting rcouch in multiple repo
On Thu, Feb 6, 2014 at 6:44 PM, Paul Davis paul.joseph.da...@gmail.com wrote: I've managed to split out the following rcouch applications: couch_index couch_mrview couch_replicator couch_collate couch_httpd couch And I've pushed them to their respective repositories on branches named import-rcouch. This is the procedure I used to do the extract: https://gist.github.com/davisp/8848265 Hooray merges! On Thu, Feb 6, 2014 at 3:49 AM, Benoit Chesneau bchesn...@gmail.com wrote: On Wed, Feb 5, 2014 at 10:13 PM, Paul Davis paul.joseph.da...@gmail.comwrote: So this turned into more of a thing than I thought it'd be though I have at least gotten couch_index split out onto a branch I think. I need to do some diff's to make sure that its identical and then have Benoit read the history to make sure its all sane. My notes on the requisite git gymnastics are here: https://gist.github.com/davisp/8833187 I'll do more work on this tonight or tomorrow morning but I'm off line for the rest of the afternoon today. Yup the move from apps/ to src/ then back to apps/ was unfortunate . i can eventually rebase and provide a new branch at 941a8236c33a248b77abc8fa546a082d08c18bd9 not sure it's interresting for all to have all the steps. (though the slip of couch_httpd may be interresting... - benoit Checked this morning. Apparently all repos are OK except the couch_mrview one . The tests 09- and 10- has disappeared from it. I am trying to see if i can create a new branch with them without losing the history. I didn't launched the tests yet. I have to check actually how you are launching the tests in the bigcouch branch now. Maybe I could revisit that in the branch to follow what you did. For myself I changed the test paths so i could launch them simply by using the prove command. About the tests I am wondering if we shouldn't move test/etap* and the util to the couch app in a test folder - beoit
Re: splitting rcouch in multiple repo
Apparently all repos are OK except the couch_mrview one . The tests 09- and 10- has disappeared from it. I am trying to see if i can create a new branch with them without losing the history. Hard to say. I'll go back and try and compare logs to see where I went wrong. I didn't launched the tests yet. I have to check actually how you are launching the tests in the bigcouch branch now. Maybe I could revisit that in the branch to follow what you did. For myself I changed the test paths so i could launch them simply by using the prove command. I've not got the etaps wired up just yet. BigCouch just had a large prove command and disabled some that were weird. I'll have to do more work to make sure that all of the current etaps run properly but I'm not super worried about it right now. On the other hand, the JS tests are executed by running: './dev/run -- test/javascript/run'. The './dev/run' script pulls up an entire three node cluster as well for anyone wanting to play with that. As of now the JS tests just run against the single node port on a node. About the tests I am wondering if we shouldn't move test/etap* and the util to the couch app in a test folder - beoit +1 after the merge is over.
Re: splitting rcouch in multiple repo
Nope, didn't have to do anything special for couch which was nice. On Sun, Feb 9, 2014 at 4:29 PM, Benoit Chesneau bchesn...@gmail.com wrote: On Thu, Feb 6, 2014 at 6:44 PM, Paul Davis paul.joseph.da...@gmail.com wrote: I've managed to split out the following rcouch applications: couch_index couch_mrview couch_replicator couch_collate couch_httpd couch And I've pushed them to their respective repositories on branches named import-rcouch. This is the procedure I used to do the extract: https://gist.github.com/davisp/8848265 Hooray merges! Thanks! In your paste I don't see the procedure you followed for the couch application. Did you do anything special? - benoit
Re: splitting rcouch in multiple repo
On Thu, Feb 6, 2014 at 6:44 PM, Paul Davis paul.joseph.da...@gmail.com wrote: I've managed to split out the following rcouch applications: couch_index couch_mrview couch_replicator couch_collate couch_httpd couch And I've pushed them to their respective repositories on branches named import-rcouch. This is the procedure I used to do the extract: https://gist.github.com/davisp/8848265 Hooray merges! Thanks! In your paste I don't see the procedure you followed for the couch application. Did you do anything special? - benoit
Re: splitting rcouch in multiple repo
On Wed, Feb 5, 2014 at 10:13 PM, Paul Davis paul.joseph.da...@gmail.comwrote: So this turned into more of a thing than I thought it'd be though I have at least gotten couch_index split out onto a branch I think. I need to do some diff's to make sure that its identical and then have Benoit read the history to make sure its all sane. My notes on the requisite git gymnastics are here: https://gist.github.com/davisp/8833187 I'll do more work on this tonight or tomorrow morning but I'm off line for the rest of the afternoon today. Yup the move from apps/ to src/ then back to apps/ was unfortunate . i can eventually rebase and provide a new branch at 941a8236c33a248b77abc8fa546a082d08c18bd9 not sure it's interresting for all to have all the steps. (though the slip of couch_httpd may be interresting... - benoit
Re: splitting rcouch in multiple repo
I've managed to split out the following rcouch applications: couch_index couch_mrview couch_replicator couch_collate couch_httpd couch And I've pushed them to their respective repositories on branches named import-rcouch. This is the procedure I used to do the extract: https://gist.github.com/davisp/8848265 Hooray merges! On Thu, Feb 6, 2014 at 3:49 AM, Benoit Chesneau bchesn...@gmail.com wrote: On Wed, Feb 5, 2014 at 10:13 PM, Paul Davis paul.joseph.da...@gmail.comwrote: So this turned into more of a thing than I thought it'd be though I have at least gotten couch_index split out onto a branch I think. I need to do some diff's to make sure that its identical and then have Benoit read the history to make sure its all sane. My notes on the requisite git gymnastics are here: https://gist.github.com/davisp/8833187 I'll do more work on this tonight or tomorrow morning but I'm off line for the rest of the afternoon today. Yup the move from apps/ to src/ then back to apps/ was unfortunate . i can eventually rebase and provide a new branch at 941a8236c33a248b77abc8fa546a082d08c18bd9 not sure it's interresting for all to have all the steps. (though the slip of couch_httpd may be interresting... - benoit
splitting rcouch in multiple repo
I am seeing that bigcouch is splitting everything in its own repo. I could also do the same for rcouch quite easily. The question is how. I basically need the following repo: couch_collate couch_mrview couch_index couch_replicator couch_httpd couch_collate (and probably soon a couch_js) I think most are already existing except maybe couch_collate ( I need to check). Is creating merge-branch enough? What about the missing repositories? How to ask for them? - benoit
Re: splitting rcouch in multiple repo
All of those repos already exist: https://git-wip-us.apache.org/repos/asf?s=couchdb Some but not all of those I've done the initial legwork on extracting source code from couch and/or rcouch. I have some time right now while I wait on other things to pull those at into new branches named something like import-rcouch. The hard part here is going to be how we merge differences in the couch application. The history gets fairly tricky to maintain in the split through the rename src/couchdb to src/couch. I'll give it a whirl with the approach I did for bigcouch to see if that works and gives the same sha's at least for the initial history. On Wed, Feb 5, 2014 at 9:00 AM, Benoit Chesneau bchesn...@gmail.com wrote: I am seeing that bigcouch is splitting everything in its own repo. I could also do the same for rcouch quite easily. The question is how. I basically need the following repo: couch_collate couch_mrview couch_index couch_replicator couch_httpd couch_collate (and probably soon a couch_js) I think most are already existing except maybe couch_collate ( I need to check). Is creating merge-branch enough? What about the missing repositories? How to ask for them? - benoit
Re: splitting rcouch in multiple repo
On Wed, Feb 5, 2014 at 4:38 PM, Paul Davis paul.joseph.da...@gmail.comwrote: All of those repos already exist: https://git-wip-us.apache.org/repos/asf?s=couchdb perfect Some but not all of those I've done the initial legwork on extracting source code from couch and/or rcouch. I have some time right now while I wait on other things to pull those at into new branches named something like import-rcouch. The hard part here is going to be how we merge differences in the couch application. The history gets fairly tricky to maintain in the split through the rename src/couchdb to src/couch. I'll give it a whirl with the approach I did for bigcouch to see if that works and gives the same sha's at least for the initial history. ok, make sense since i have also at some point moved it to src/couch (and will be renamed to couch_core soon in rcouch). - benoit On Wed, Feb 5, 2014 at 9:00 AM, Benoit Chesneau bchesn...@gmail.com wrote: I am seeing that bigcouch is splitting everything in its own repo. I could also do the same for rcouch quite easily. The question is how. I basically need the following repo: couch_collate couch_mrview couch_index couch_replicator couch_httpd couch_collate (and probably soon a couch_js) I think most are already existing except maybe couch_collate ( I need to check). Is creating merge-branch enough? What about the missing repositories? How to ask for them? - benoit
Re: splitting rcouch in multiple repo
ok, make sense since i have also at some point moved it to src/couch (and will be renamed to couch_core soon in rcouch). Why are you wanting to rename couch to couch_core? Erlang standard is to have app/src/app_*.erl. Renaming everything to couch_core_*.erl would be a fairly massive change.
Re: splitting rcouch in multiple repo
On Wed, Feb 5, 2014 at 5:52 PM, Paul Davis paul.joseph.da...@gmail.comwrote: ok, make sense since i have also at some point moved it to src/couch (and will be renamed to couch_core soon in rcouch). Why are you wanting to rename couch to couch_core? Erlang standard is to have app/src/app_*.erl. Renaming everything to couch_core_*.erl would be a fairly massive change. Well in theory you don't need to rename everything as couch_core_* . That's more to have a proper naming for what is the core or not. couch by itself could be the release point (or not). I am not sure it's really needed. - benot
Re: splitting rcouch in multiple repo
Why the rename if you don't want to rename modules and all that comes with it? If you just rename the directory, couch.app.src, and couch.erl I'm not sure I see the benefit. On Wed, Feb 5, 2014 at 11:28 AM, Benoit Chesneau bchesn...@gmail.com wrote: On Wed, Feb 5, 2014 at 5:52 PM, Paul Davis paul.joseph.da...@gmail.comwrote: ok, make sense since i have also at some point moved it to src/couch (and will be renamed to couch_core soon in rcouch). Why are you wanting to rename couch to couch_core? Erlang standard is to have app/src/app_*.erl. Renaming everything to couch_core_*.erl would be a fairly massive change. Well in theory you don't need to rename everything as couch_core_* . That's more to have a proper naming for what is the core or not. couch by itself could be the release point (or not). I am not sure it's really needed. - benot
Re: splitting rcouch in multiple repo
On Wed, Feb 5, 2014 at 7:27 PM, Paul Davis paul.joseph.da...@gmail.comwrote: Why the rename if you don't want to rename modules and all that comes with it? If you just rename the directory, couch.app.src, and couch.erl I'm not sure I see the benefit. saying it's the core.
Re: splitting rcouch in multiple repo
On Wed, Feb 5, 2014 at 4:00 PM, Benoit Chesneau bchesn...@gmail.com wrote: I am seeing that bigcouch is splitting everything in its own repo. I could also do the same for rcouch quite easily. The question is how. I basically need the following repo: couch_collate couch_mrview couch_index couch_replicator couch_httpd couch_collate (and probably soon a couch_js) I think most are already existing except maybe couch_collate ( I need to check). Is creating merge-branch enough? What about the missing repositories? How to ask for them? - benoit ok will do the split tomorrow. Using current status of the rcouch branch. - benoit
Re: splitting rcouch in multiple repo
On Wed, Feb 5, 2014 at 1:16 PM, Benoit Chesneau bchesn...@gmail.com wrote: On Wed, Feb 5, 2014 at 7:27 PM, Paul Davis paul.joseph.da...@gmail.comwrote: Why the rename if you don't want to rename modules and all that comes with it? If you just rename the directory, couch.app.src, and couch.erl I'm not sure I see the benefit. saying it's the core. Doesn't seem worth it to me and it'd screw anyone trying to do release upgrades. Either way I'd like to defer that particular decision until after the merge. Maintaining history is already gonna be hard enough.
Re: splitting rcouch in multiple repo
Cool. I'm gonna take a crack at getting all of the rcouch versions of apps split out into their respective repositories to see how hard it'll be to get things merged between the rcouch and bigcouch versions. I'll push anything I make to branches named import-rcouch and will paste the commands I used in an email on this thread. On Wed, Feb 5, 2014 at 1:17 PM, Benoit Chesneau bchesn...@gmail.com wrote: On Wed, Feb 5, 2014 at 4:00 PM, Benoit Chesneau bchesn...@gmail.com wrote: I am seeing that bigcouch is splitting everything in its own repo. I could also do the same for rcouch quite easily. The question is how. I basically need the following repo: couch_collate couch_mrview couch_index couch_replicator couch_httpd couch_collate (and probably soon a couch_js) I think most are already existing except maybe couch_collate ( I need to check). Is creating merge-branch enough? What about the missing repositories? How to ask for them? - benoit ok will do the split tomorrow. Using current status of the rcouch branch. - benoit
Re: splitting rcouch in multiple repo
On Wed, Feb 5, 2014 at 8:25 PM, Paul Davis paul.joseph.da...@gmail.comwrote: On Wed, Feb 5, 2014 at 1:16 PM, Benoit Chesneau bchesn...@gmail.com wrote: On Wed, Feb 5, 2014 at 7:27 PM, Paul Davis paul.joseph.da...@gmail.com wrote: Why the rename if you don't want to rename modules and all that comes with it? If you just rename the directory, couch.app.src, and couch.erl I'm not sure I see the benefit. saying it's the core. Doesn't seem worth it to me and it'd screw anyone trying to do release upgrades. Either way I'd like to defer that particular decision until after the merge. Maintaining history is already gonna be hard enough. you're probably right. Also agree there is no hurry on that topic.
Re: splitting rcouch in multiple repo
On Wed, Feb 5, 2014 at 8:27 PM, Paul Davis paul.joseph.da...@gmail.comwrote: Cool. I'm gonna take a crack at getting all of the rcouch versions of apps split out into their respective repositories to see how hard it'll be to get things merged between the rcouch and bigcouch versions. I'll push anything I make to branches named import-rcouch and will paste the commands I used in an email on this thread. cool! I will update the thread once it's done. - benoit
Re: splitting rcouch in multiple repo
So this turned into more of a thing than I thought it'd be though I have at least gotten couch_index split out onto a branch I think. I need to do some diff's to make sure that its identical and then have Benoit read the history to make sure its all sane. My notes on the requisite git gymnastics are here: https://gist.github.com/davisp/8833187 I'll do more work on this tonight or tomorrow morning but I'm off line for the rest of the afternoon today. On Wed, Feb 5, 2014 at 1:33 PM, Benoit Chesneau bchesn...@gmail.com wrote: On Wed, Feb 5, 2014 at 8:27 PM, Paul Davis paul.joseph.da...@gmail.comwrote: Cool. I'm gonna take a crack at getting all of the rcouch versions of apps split out into their respective repositories to see how hard it'll be to get things merged between the rcouch and bigcouch versions. I'll push anything I make to branches named import-rcouch and will paste the commands I used in an email on this thread. cool! I will update the thread once it's done. - benoit
Re: multiple repo
As long as the source distribution can build without needing an internet connection, I'll be happy. On Sat, Jan 7, 2012 at 2:25 PM, Benoit Chesneau bchesn...@gmail.com wrote: Hi all, I would like to start some work on my own to test how I can merge our autotool build system and rebar to provide an erlang release and distribute couchdb more easily. In refuge I consider that all the apps in src/ are standalone app and each have their own history (old couchdb history is kept) . To create a release, the make distdir collect all the deps and in one source dir and the archive is created from that source directory. At the end the created release is the same you have with couchdb and you don't need to have git installed to build it. Packages created (deb, rpm osx) are based on this source release. Can we do the same in the apache project ? Ie having one git repo / app ? Or do we still need to handle them in the same repo ? Just wanted to ask to know how I should handle that or at least start the integration of rebar. Let me know, - benoît
multiple repo
Hi all, I would like to start some work on my own to test how I can merge our autotool build system and rebar to provide an erlang release and distribute couchdb more easily. In refuge I consider that all the apps in src/ are standalone app and each have their own history (old couchdb history is kept) . To create a release, the make distdir collect all the deps and in one source dir and the archive is created from that source directory. At the end the created release is the same you have with couchdb and you don't need to have git installed to build it. Packages created (deb, rpm osx) are based on this source release. Can we do the same in the apache project ? Ie having one git repo / app ? Or do we still need to handle them in the same repo ? Just wanted to ask to know how I should handle that or at least start the integration of rebar. Let me know, - benoît
Re: multiple repo
Thanks for bringing this up. Regardless of whether we eventually store our own applications in individual git repositories I think the ability to pull in external repos will prove useful in tracking upstream changes from third party applications like mochiweb and ibrowse. The current approach of copy/pasting source code is error-prone and has caused some breakage in the past. I certainly understand the importance of the build system being self-contained, but I think the source release described by Benoit covers that. Adam On Jan 7, 2012, at 9:25 AM, Benoit Chesneau wrote: Hi all, I would like to start some work on my own to test how I can merge our autotool build system and rebar to provide an erlang release and distribute couchdb more easily. In refuge I consider that all the apps in src/ are standalone app and each have their own history (old couchdb history is kept) . To create a release, the make distdir collect all the deps and in one source dir and the archive is created from that source directory. At the end the created release is the same you have with couchdb and you don't need to have git installed to build it. Packages created (deb, rpm osx) are based on this source release. Can we do the same in the apache project ? Ie having one git repo / app ? Or do we still need to handle them in the same repo ? Just wanted to ask to know how I should handle that or at least start the integration of rebar. Let me know, - benoît
Re: multiple repo
Thanks for bringing this up. Regardless of whether we eventually store our own applications in individual git repositories I think the ability to pull in external repos will prove useful in tracking upstream changes from third party applications like mochiweb and ibrowse. The current approach of copy/pasting source code is error-prone and has caused some breakage in the past. I certainly understand the importance of the build system being self-contained, but I think the source release described by Benoit covers that. Adam On Jan 7, 2012, at 9:25 AM, Benoit Chesneau wrote: Hi all, I would like to start some work on my own to test how I can merge our autotool build system and rebar to provide an erlang release and distribute couchdb more easily. In refuge I consider that all the apps in src/ are standalone app and each have their own history (old couchdb history is kept) . To create a release, the make distdir collect all the deps and in one source dir and the archive is created from that source directory. At the end the created release is the same you have with couchdb and you don't need to have git installed to build it. Packages created (deb, rpm osx) are based on this source release. Can we do the same in the apache project ? Ie having one git repo / app ? Or do we still need to handle them in the same repo ? Just wanted to ask to know how I should handle that or at least start the integration of rebar. Let me know, - benoît