Skip to content

Why R-project source code is not on Github

9 messages · Gaurav Sehrawat, Marc Schwartz, Yihui Xie +4 more

#
R-Project is missing something important in regards to its development ,
one simply can't ignore Github ,where collaboration is at it's best .

OR If i am wrong is this the correct R-source :
https://github.com/wch/r-source

Is anyone thinking to bring R-project org on Github ? Maybe there might be
some difficulty while porting its version system to Github .

Just a suggestion .

Thanks
Gaurav Sehrawat
http://igauravsehrawat.com
#
On Aug 21, 2014, at 3:11 AM, Gaurav Sehrawat <igauravsehrawat at gmail.com> wrote:

            
The link you have above is to a read-only mirror (perhaps not the only one) of the R source code that is kept in the official Subversion repo:

  https://svn.r-project.org/R/

There are also some documents that describe R's development cycle and related processes:

  http://www.r-project.org/certification.html

Your suggestion to move to Github is perhaps based upon a false premise, that the R community at large has the ability to directly post code/patches to the official distribution. We can contribute code and patches, primarily here on R-Devel, to the code base. However, only the members of R Core team (http://www.r-project.org/contributors.html) have write access to the SVN repo above and have to approve any such contributions.

Since the current SVN based system works well for them and provides restricted write access that they can control, there is no motivation to move to an alternative version control system unless they would find it to be superior for their own development processes.

That being said, there are a number of contributing projects that have packages on CRAN, that do use Github, myself included. There is also R-Forge (https://r-forge.r-project.org), which provides another SVN based platform for community package development.

Regards,

Marc Schwartz
#
On Aug 21, 2014, at 6:40 AM, Marc Schwartz <marc_schwartz at me.com> wrote:

            
How is this different from Github? Github just makes it much easier to create and post patches to the project - it has nothing to do with write access - typically on Github the community has no write access, either. Using pull requests is certainly much less fragile than e-mails and patches are based on forked branches, so you can directly build the patched version if you want without manually applying the patch - and you see the whole history so you can pick out things logically. You can comment on individual patches to discuss them and even individual commits - often leading to a quick round trip time of revising it.

Cheers,
Simon
#
As someone who has merged more than a hundred pull requests on Github,
I cannot agree more. Sometimes I can take patches on my mobile phone
while I'm still in bed if they look reasonable and simple enough.
Sometimes the patches are not worth emails back and forth, such as the
correction of typos. I cannot think of anything else that is more
efficient than being able to discuss the patch right in the lines of
diff's.

Regards,
Yihui
--
Yihui Xie <xieyihui at gmail.com>
Web: http://yihui.name


On Thu, Aug 21, 2014 at 10:58 AM, Simon Urbanek
<simon.urbanek at r-project.org> wrote:
2 days later
#
I was moreover concerned over bridging gap between web2.0 and web1.0
development methodologies  & thus passing code to younger generation .

But never mind . Sooner or later .

Cheers.
On Fri, Aug 22, 2014 at 9:30 AM, Yihui Xie <xie at yihui.name> wrote:

            

  
  
#
On Sun, Aug 24, 2014 at 1:10 PM, Gaurav Sehrawat
<igauravsehrawat at gmail.com> wrote:
These things take time, but a lot has happened over the past years. By
now all activity of r-base [1] cran [2] and r-forge [3] is
continuously mirrored on Github, which already gives unprecedented
insight in developments. At least several r-core members [4,5,6,7,8]
have been spotted on Github, and this years useR2014 website [9] was
developed and hosted completely on Github. It seems like a matter of
time until the benefits outweigh the cost of a migration, even to the
more conservative stakeholders.

However moving development of a medium sized, 20 year old open source
project is not trivial. You are dealing with a large commit history
and many contributors that all have to overhaul their familiar tools
and development practices overnight. There is also the infrastructure
of nightly builds and CRAN r-devel package checking that relies on the
svn. Moreover moving to Github means changes in communications, for
example replacing the current bug tracking system to Github "issues".
In addition, several members are skeptical about putting source code
in the hands of a for-profit US company, and other legal issues. These
are just some of the concerns that would need to be addressed to get
everyone on board.

My (limited) experience with these things is that the most critical
piece of making such a transition actually happen is not just a
general consensus that a is preferable over b, but rather a detailed
proposal outlining what the migration would involve, the
cost/benefits, a planning, and someone that is willing to take the
lead. Only on the basis of such a serious proposal you can have a
discussion in which everyone can voice concerns, be assured that
his/her interests are secure, and the idea can eventually be put up
for a vote.

Jeroen

[1] https://github.com/wch/r-source
[2] https://github.com/cran
[3] https://github.com/rforge
[4] https://github.com/s-u
[5] https://github.com/mmaechler
[6] https://github.com/duncantl
[7] https://github.com/pmur002
[8] https://github.com/dmbates
[9] https://github.com/user2014
#
On 8/24/2014 10:24 AM, Jeroen Ooms wrote:
Am I correct that we could use Git without Github?


       If yes, the planning might involve a cost-benefit comparison of 
what would be required bring up a not-for-profit alternative to Github 
(e.g., RGit.org or FreeGit.org or ...), and whether the risks of 
problems with that would be more or less than the risks associated with 
"putting source code in the hands of a for-profit US company".


       Spencer


p.s.  Regarding the risks of "putting source code in the hands of a 
for-profit US company," I would naively expect that it should be easy 
and cheap for someone to program a server to make daily backup copies of 
whatever we want from Github.  This could provide an insurance policy in 
case events push the group to leave Github. Many (most?) of those who 
read this may remember how LibreOffice forked from Open Office.  A 
friend told me that MySQL has a much larger user (and developer?) base 
than LibreOffice, and every Oracle executive doubtless knows that MySQL 
could similarly be forked relatively easily.
#
One thing to note about git vs svn is that each git repository is a complete repository containing the full history, so despite github acting as a central repository, it is not the same as a central svn repository. In svn the central repository is typically the only repository with a complete revision history, but that is not the case with git.

?????
Brian Lee Yung Rowe
Founder, Zato Novo
Professor, M.S. Data Analytics, CUNY
On Aug 24, 2014, at 2:22 PM, Spencer Graves <spencer.graves at structuremonitoring.com> wrote:

            

  
  
#
On Aug 24, 2014, at 2:22 PM, Spencer Graves <spencer.graves at structuremonitoring.com> wrote:

            
No. git is the necessary evil if you deal with Github (almost - Github actually supports direct SVN access as well) - but there is no point in using git alone. I hate git*, but I love Github (despite being very cynical about it before I tried pushing some of my packages there - and seeing the actual impact). The whole point are the collaborative features - and it's hard to get those right (many tried and failed such as GitLab) which is exactly what Github did.

Cheers,
Simon


* -  git is great for people who like to compile their own Linux kernel every week. Yes, I have done that when I was young - it was fun and I felt great having all the fine control, but once you get a life and just want to get things done, you really don't want to deal with things at such a level anymore. There are better alternatives, but Github placed the bet on git which is what counts in the end. But this is OT so flame me directly if you wish.