Rant: Yii is closed open source

Sorry for the incendiary title, I’m just feeling pretty frustrated with the state of the Yii development process at the moment.

I feel that by continuing to use Google Code / SVN, the framework’s development is effectively closed to anyone who isn’t part of the core team. When Yii was young, this was a good thing, Qiang et al needed to retain control to prevent a too many cooks scenario. But now Yii is fairly mature, some big businesses rely on it, and the codebase has increased in size dramatically, yet we still depend on the few core devs to:

  1. Design and implement new features

  2. Find and fix bugs

  3. Test things before release

And the fact is, as the serious bugs in the latest release show, it’s becoming increasingly hard for the core devs to manage all this.

The bug tracker currently has 224 open issues, can we really expect the 7 people on the core team to address all these issues, on their own time, for free, without taking years? If not, we should make it as EASY AS POSSIBLE for other people to contribute to Yii.

To me, this means moving the framework to github as soon as possible (and not waiting for Yii 2.0) because:

  1. It encourages openness, work on features can be done on separate branches in public view and then merged in with the main branch, this makes code review a lot easier.

  2. Allows people outside of the core team to review commits, comment on designs etc in the same place as the code, making discussion a lot easier (you don’t have to go open a new issue on google code or create a forum thread to discuss something)

  3. Allows people outside of the core team to submit pull requests for features and fixes. I know google code allows this as well, but the process of creating and submitting patches is pretty horrible compared to the github workflow.

  4. Many eyes are watching. Because it’s easier to see individual features being implemented, it’s much more likely that bugs and limitations will be found before they’re merged with live.

  5. Move faster. It’s much easier for people on git to keep up with bleeding edge latest code, and therefore find and fix possible bugs much faster. It also means that the framework could eventually switch to a continuous release schedule, rather than having months between releases.

  6. All the cool kids are doing it. A lot of other open source projects have already moved to github, so most developers are familiar with it already.

In my opinion, if the framework was already on github, at least 2 very serious, show stopping bugs that were part of the latest release would have been caught long before they were merged with the main branch. And if major bugs were found that passed through code review, fixes could be released in hours, not weeks.

And the people have spoken, there have been polls in the past with the overwhelming majority voting for a move to github, with support from members of the core team, yet nothing happens…

I understand that there still needs to be a certain level of control / direction and that’s fine, but Yii’s popularity is rapidly increasing, if the framework is to retain its high level of code quality, the development process NEEDS to be opened up and modernized. This is coming from someone who’s deeply invested in Yii, been using the framework since it’s earliest days, relies on it for 95% of their income and doesn’t want it to suffer as it matures.

Charles

Just to note, I’m not arguing for more people to have write access or to join the core team here, I just want to make it easier for people to contribute code and see what’s going on with the development process as it happens.

+1 from me.

I support the proposal to move Yii development to github. We currently rely on the unofficial yii github repo (github.com/dmtrs/unofficial-yii-framework-mirror) but don’t do any pull-requests because the real repo is on google code and the increased effort involved is significant.

One more vote for Yii 1.x to be moved to github(for version 2.0 it is agreed to be on github)

I also add my vote here (even though we already have the github voting thread). The pull request feature at github is awesome. It could encourage interested developers much more to contribute to the project.

+1. It would certainly help get huge contribution.

Definitely +1 for me, for the sake of the project!

I agree.

+1

+1

I was just wondering if any of the core developers care enough to answer?

+1

All hail Github!

I’d also like to see a response from someone on the core team, perhaps posting it as a bug is a better idea:

http://code.google.com/p/yii/issues/detail?id=3136

LOL

Don’t worry, i’m sure the core team knows about this “issue” :)

+1

If you look at projects like

Foundation framework

Twitter bootstrap

you will see all the people participating and helping to make these frameworks better and better. Thousands of people constantly commenting and reviewing code. I am really missing something like that for Yii and I think it can only be beneficial for the whole community

Even the git-svn could be used to sync the github version with the code.google.com one.

When I first started using Yii I looked around to see where I could contribute code if I decided I wanted to but saw that it wasn’t a real and convenient option. I think that right now a resource is going to waste, a bunch of untapped volunteer programmers.

TLDR: +1 for me.

+1

Yii2 will be definitely on github. As for Yii1, we aren’t sure if it worth doing since it requires re-defining build process and documentation translations process.