Welcome
Welcome to the brainstorming group for the 2014 Drupal.org roadmap! This group is to help the Drupal.org Software Working Group gather community input into the 2014 budget and plans for Drupal.org improvements. Please read the announcement for more background/details.
Latest ideas Most popular Recent Comments
To participate:
- Review the list of submitted proposals and "vote up" and/or comment on ones that speak to you.
- If you don't see your idea reflected, propose your own ideas using the idea template.
- While we want to hear about everything that's on your mind, we're especially interested in small, but impactful ideas.
- Proposals are wiki pages, so feel free to provide additional details in other peoples' proposals; think of them as "issue summaries" for ideas, so keep them neutral.
Voting/feedback will considered until 00:00 GMT on September 6, 2013, in order to give us ample time to make a proposal (which the results here will be a part of) for the Drupal Association Board Retreat prior to DrupalCon Prague. Thanks for participating!
Recent comments
Gitlab feedback
I had a great talk with the Sytse from Gitlab
It's all fine to hope that
Just to add to this: we don't have to worry about Github just disappearing, but also taking Github in a direction that's incompatible (or just interferes) with how Drupal and its contributors work.
At least with a Free software tool, like Gitlab, we can exercise some control over it with patches (or even participate in a fork, if necessary).
I agree.
Self hosted tool would be better than a 3rd party integration.
Politics
I take exception to this framing of the discussion in a way that precludes talking politics.
I know we all love to be jaded about it, but politics is important. The difference between living in a dictatorship and a modern bourgeois democracy is politics, moreover my reasons for disliking GitHub aren't really technical but boil down to politics: I dislike the idea of taking (some) control of the way Drupal is developed away from the pro-Drupal, non-profit, free software based organisation we have now and moving it to a not necessarily pro-Drupal, for profit, proprietary based organisation.
Personally, I don't find the arguments very convincing. For a start they are just personal preferences followed by the supposition about 'fear of change', I also use GitHub every day (for some private contracts) so the 'fear of change' argument doesn't really wash, it's also pretty rude to assume that's what people's problems with Github are.
This is an issue I hadn't
This is an issue I hadn't even considered - I don't want to have to create accounts on 3rd party systems in order to contribute to Drupal.
I agree that a self-hosted tool would be better than a 3rd party service.
Control your data
Why would I be forced to create an account on Github and hand over all my data to an external entity (obviously I am not talking about the code itself here, but about one's profile, activity, etc), when all I want is to contribute on drupal.org? If you really want to use PR, why would you need an external centralised platform, when it is actually a matter of adding a remote? (Even though I am personally fine with our current patch workflow).
If the community believes we need more specific tools, I prefer self-hosted ones like Gitlab.
maybe a redundant setup with
maybe a redundant setup with github and a fallback on gitlab would be enough then
that way Drupal would only have to maintain once gitlab and they can take shortcuts or don't expect the load level all the time but only in when github is down you can analyze by week https://status.github.com/messages/2014-05-16 but i am sure the scale they handle is unmatched compared to the second place
Honestly from the comments of
Honestly from the comments of the critical people, Gitlab is likely the better match. Do however note that its written in Ruby and they may need to do a bit of tweaking to handle the Drupal scale. But it should bring many of the benefits of Github with more control over the hosting and code. BTW with git anybody can choose to collaborate on other platforms anyway.
let's stick with github
let's stick with github because is the best for FOSS, that is subjective but it has become a defacto standard.
I am not against gitlab or any other that is sound
Gush https://github.com/gushphp/gush http://gushphp.org was born to deal with those problem via adapters. As long as they have apis is fine.
The point here is to move to a really collaborative tool that handles all programming languages repos of today and law firm documents and what not. That is github today, then create the tools and platforms to make it robust and portable so we can move easily to any other third party.
This is in programming what OO does, is call adapter pattern. You don't need to marry any implementation. not even your own
there are dependencies yes,
there are dependencies yes, but they are solvable. Code in a business is stored safely if it is important. I mean production code. An open source project can rely on a good third party service from which it will profit in collaboration, tradeoff that is far advantageous.
the problems you are trying to make are already solved by all other businesses relying on github, via mirrors and inhouse if needed enterprise edition or others. It is nothing new, those arguments have been dealt with. Drupal is not the only project. Yes is big and all but it is not the only one.
We don't need to reinvent the wheel, Drupal reuses code, like Symfony, like shell, like mysql, no need to have Drupal reinvent a database system, a shell terminal, etc etc, nor distributing and collaborating software like github either.
The case is extremely weak, imo is no case.
Compromise
There's are 2 solutions for the dependency on external parties:
1/ Use Github for enterprises, but since it has a serious price tag ($212,500 for 1000 users each year), I send them an email asking for an estimate and linked to this issue.
2/ Use gitlab, it has similar features and an enterprise version as well, I send them an email as well. Related wiki: Use gitlab for all projects
PS: We switched to using GitLab last year and we use it for all our clients and developers (internal and external), it works great.
it is not honest not serious
On the contrary, what ifs need to be dealt with, and contingency plans need to be made. This is the proper/professional way of dealing with large projects like this. It's all fine to hope that Github will never disappear, but the fact remains that it may for some reason.
Now that said, your idea of having alternate mirrors sounds like an acceptable solution to the problem. This of course increases the complexity of the issue however, as we will need to ensure that the mirrors contain the updated code, and that switches exist to pull from the mirrors.
This does not address the issue. The issue is that by using a 3rd party service, we are at the mercy of that 3rd party service. If we can get some sort of guarantee out of them, or have a backup plan of some sort, then the point becomes moot. But without a guarantee or a backup plan, using a 3rd party service is not reasonable.
1) The legacy code does not deter advancement. We've advanced this far with our current code.
2) We don't need to keep legacy code, we can write our own code that does whatever we need.
We should be focusing on making our own system work the way we want, not relying on 3rd parties.
lol i should lower my own
lol i should lower my own tone, apologizes. It is that the debate gets the best of me. Sorry. But i back up the points made.
let me deal with your points
let me deal with your points one by one
it is not honest not serious to deal with what ifs in that manner. what if google disappears! yes we can be even prepared for that. we just have mirrors into other third parties? an example
this is typical response from an insider, not trying to insult or anything, but the propaganda of drupal sometimes get in the way, we are big, nobody will be able to handle us, we conquer the world with millions of websites, when in reality is ok, but it is not that we cannot use github normally like the rest of the planet
the advertisement is clear, drupal should be a CMF, be good at that, not at maintaining legacy code that deters its advancement
Again as i have been saying all along, I have dealt with those excuses and there is no grounds or case.
downloads
would stay on drupal.org.it's just the issue queue. we are using cgit to view our git repos. dogfooding is important but efficiency is another.
let's raise more awareness
I don't want this. I think it's a bad idea - we should be improving Drupal.org if there are problems, not moving into a 3rd party service. There are three primary reasons for this:
1) What happens if github disappears someday? It's not likely, but it wouldn't be the first time a big company crashed.
2) If/when github goes down with technical issues, we are at their mercy as to when they get the issues fixed. If they take a week, then we all have nothing to do but wait for a week, hoping that they get it fixed ASAP. For those of us who are developing with Drupal for our companies, being at the mercy of a 3rd party is not an acceptable risk.
3) Drupal related projects/issues etc should remain on Drupal.org. What kind of advertisement is it for Drupal if we cannot even build infrastructure on Drupal to handle the things it needs? It would be like going to Microsoft to download Apple updates.
You can submit a PR to the
You can submit a PR to the same branch as what is the basis for the PR. Once the developer merges that PR it becomes part of the original PR. What is missing a bit is "native" support to visualize this PRs for PRs though one can of course always manually comment with a link to that PR. That being said, github might even be willing to discuss some UI concept to help improve the visualization of all of this.
That being said, depending on the size of the proposed change to the PR, it might just make sense to add the lines to change in a comment. If a PR consists of multiple commits from different people while going through several iterations, the git history could become quite messy. As a result in many projects I watch, the preferences is then to just have the original submittor do the actual commits in the PR, even if that means that the submittor will collect all the credit in the commit log.
yes you can the process is
yes you can
the process is explained on the link i provided but i can repeat it
git is distributed so you can fork and have a branch in which you merge both works yours and the one you are trying to merge into. Also you can send a PR without having to wait, with the former changes to the main repo or to the fork of the other person you are collaborating.
In addition and further superior you can have guidelines for patches if you want to still do them on a github thread. This I have seen done often. However the commenting on code feature is so powerful that it either is a comment or a PR to a submitted PR that solves it.
Further you can do a gist. Do the example and link to it very quickly.
I think is more about educating people. It is like living in the past and clinging to the past in things that honestly have no excuse.
kind regards, you guys know a lot, but i suggest please you review this carefully
Still
you can't collaborate on a PR. I make a pull request, someone wants to make changes to it, what now?
I think i made very good
I think i made very good points to move to Github
http://www.craftitonline.com/2014/04/en-route-to-drupalcon-austin-2014/
let's raise more awareness and really schedule the move, is all that people want really, no politics please!