See below On May 16, 2013, at 7:02 PM, Sergiu Dumitriu <[email protected]> wrote:
> On 05/16/2013 12:16 PM, Vincent Massol wrote: >> >> On May 16, 2013, at 6:09 PM, Vincent Massol <[email protected]> wrote: >> >>> >>> On May 16, 2013, at 5:29 PM, Sergiu Dumitriu <[email protected]> wrote: >>> >>>> On 05/16/2013 10:54 AM, Vincent Massol wrote: >>>>> >>>>> On May 16, 2013, at 4:47 PM, Thomas Mortagne <[email protected]> >>>>> wrote: >>>>> >>>>>> On Thu, May 16, 2013 at 4:25 PM, Vincent Massol <[email protected]> >>>>>> wrote: >>>>>>> I'm rather -0 ATM and very close to -1 because: >>>>>>> >>>>>>> 1) I haven't heard from a windows dev for a long time, I don't think >>>>>>> that happens that often >>>>>> >>>>>> And it's surely not going to improve... >>>>>> >>>>>>> >>>>>>> 2) It's a *huge* change and it should definitely not be done lightly. >>>>>>> We would need to plan a period like 2 full days, all devs would need to >>>>>>> stop working on what they do and help out. For example all pages on >>>>>>> xwiki.org having some github links are going to be broken and will need >>>>>>> to be updated (that's probably around hunded of pages overall) >>>>>>> >>>>>> >>>>>> Yes it's a huge change, that's why it's a vote. >>>>>> >>>>>>> 3) Windows devs have a simple solution which is to use cygwin so it's >>>>>>> not a blocker >>>>>> >>>>>> It's not as trivial as you seems to think and it also mean that you >>>>>> simply can't use the standard git tools in the Windows world like the >>>>>> Github application or Tortoisegit without speaking or any EDI git >>>>>> integration... so not it really can't be seen as some obvious >>>>>> solution. And it's not like using Cygwin was some king of standard for >>>>>> Windows dev. "use cyggwin" is easy to say but the reality is that a >>>>>> dev will try to clone XWiki repository with the git tool he is used to >>>>>> and will simply can't, period. >>>>> >>>>> What I'm saying is that I don't think it's worth the effort. By worth I >>>>> mean the ratio between the effort and problems it'll require from us vs >>>>> the # of windows dev not using cygwin that'll want to develop for the >>>>> xwiki project… >>>> >>>> But this is why we have a democracy and not a dictatorship. If the >>>> community considers it is worth the effort, and at least some devs are >>>> willing to work on this, then I think it's their right to do this. >>> >>> 1) You should re-read the governance. It's a meritocracy, i.e we vote >>> important changes and devs need to be ok. So if one or a few devs want to >>> do this but some other don't for some valid reason then it's not going to >>> happen until we reach a decision. >>> >>> 2) It's all the devs that will bear the cost of maintaining the new >>> environment, no just the dev who's willing to do the initial work. >>> >>> BTW none of us work on a windows environment and I think it's a bad idea to >>> implement support for something that we never use. It can only lead to >>> something that gets broken frequently. To overcome this we'd need some >>> windows agent and this means supporting that agent and making sure it works >>> all the time (we tried in the past and failed for a very simple reason: >>> none of the devs use windows and thus we don't care). >>> >>>> It's not a good move to veto the will of the community. >>> >>> Again (in case you didn't understand) I'm ok on the principle of doing this >>> move but doing cowboy-coding without thinking about the consequences and >>> letting other fix your stuff by only doing half of the work isn't my >>> preferred style… >>> >>> We've had enough bad examples of the dev environment being broken for >>> week(s not so long ago that it's normal to want to be careful... >>> >>>> Anyway, there are other reasons to make the change, not just Windows >>>> compatibility. It saves about 2 seconds each time a dev wants to go to a >>>> directory from the command line. Going into one subdirectory means >>>> having to press "x tab <right prefix of the submodule> tab". The first >>>> two keys are superfluous since they're the same all the time. The deeper >>>> the hierarchy, the longer the time it takes to go there. It adds up to >>>> more than an hour wasted per year per dev, and I don't think it will >>>> really take a whole month of every dev to do the migration. If everybody >>>> contributes and we do a systematic effort, it could be done in an hour >>>> with the right planning. >>> >>> So to reiterate and to be constructive, before we start any actual work on >>> this I'd like that we do more evaluation. This means: >>> * see a list of windows coders who have expressed a need (apart from Florin >>> who I know already) and who have a real will to participate after the move. >>> Do we have at least one? > > This is not just about Windows. The committers that vote +1 vote for > their own environment, not just to fix a problem for hypothetical > contributors. > > And it's not about improving something for existing contributors, but > removing a blocker standing in the way of future contributors. The > easier it is for a new potential community member to join, the more of > these tentative users will actually stick around. And XWiki isn't > overwhelmed by the number of contributors to afford to voluntarily keep > out those not motivated enough to actually try to find out why the > checkout fails and what needs to be done to actually have a working > environment and go through all the painful process of installing cygwin > and the the command line tools that work with cygwin. Yes, I agree it's a nice to have. It's ok if we do it for ourselves. I don't believe this will give us more committers but doing it for ourselves is good enough if we believe it's going to make our lives easier. >>> * that we list what needs to be done precisely. I've identified some so far: >>> ** the git path changes >>> ** modify all the xwiki.org pages linking to code >>> ** git history, will we loose ability to see history of files? > > Not really. In some cases we might have to add --find-copies-harder to > some commands, but it should work out of the box for most files. FTR IntelliJ IDEA automatically adds "--follow" when you click on Git > Show History. I couldn't find any way to control this but it's on by default. No idea if adds --find-copies-harder or not by default though. > Viewing the commits that affect a file on GitHub might not list pre-move > commits, but the history will s > >>> ** others? > > * The move will break uncommitted local changes, so all devs should try > to commit their local changes, at least in a separate local branch if > not on github. But devs shouldn't keep uncommitted changes anyway, right? That will affects us all but I think it's manageable. As Denis pointed out, it's a bit more complex for contributors who keep their own patches but I still think it's acceptable and understandable. > * Depending on how they're configured, our IDEs might freak out when > pulling for the first time, since everything will be moved around. > > * Existing pull request should still work, but Jira patches will break; > they're probably broken already anyway, since we didn't really allow new > patches to be put there for a while, and most of the paths have changed > since 1-2 years ago. > > * Does anything on Jenkins depend on paths? I hope not, configurations > use module names, and they will continue to point to the right POM. There are some paths, for example for all functional tests for locating the pom.xml to execute. For ex: xwiki-enterprise-test/xwiki-enterprise-test-cluster/pom.xml > * I guess this still counts as xwiki.org changes, but we should make > sure the pages that work with remote files, like the syntax > documentation and syntax completion report, will also need to be updated. Indeed > * Existing links in emails (and other places with answers like > stackoverlow) will be broken, but that already happens whenever we move > a module, for example to make room for api+ui+test submodules, and this > happened a lot recently, so it's not a new problem. Yeah, should be acceptable. I don't think it's exactly the same problem as when we move a module because here it'll be a global change and everything will break at once. So much larger scale. But I don't think that should stop us. We should be able to live through it... > * Most annoying: forgetting our own reflex of typing x+tab when changing > the path :-) :) >> ** what happens to the JIRA links to commits in the Commits tab? Will they >> still work? > > Yes, the existing commits will not change. See my other email about finding out if the rename will fix the build issue on Windows or not. It would be nice that if we do this (lot of effort) it does solve the windows issue… ;) Thanks -Vincent >> Thanks >> -Vincent >> >>> * to list who is ok to participate actively in the move >>> * that we agree on a date so that it doesn't impact our planned roadmap >>> >>> Thanks >>> -Vincent >>> >>>>> We're going to loose at least a month before we've finished that >>>>> migration completely and I'm really worried about the toll it'll have on >>>>> our releases... >>>>> >>>>> Thanks >>>>> -Vincent >>>>> >>>>> PS: With the same group effort we could release a first version of the >>>>> new model for example ;) >>>>> _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

