Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.


Our old forums are still available as a read-only archive.

Moderators: martimiz, Sean, biapar, Willr, Ingo, simon_w

Subversion collisions among GSoC'ers


5 Posts   1958 Views

Anonymous user

12 June 2007 at 12:24pm (Last edited: 12 June 2007 12:24pm), 22 Posts

Regarding the issue of "collisions" among the GSoC'ers, here are my thoughts. They're suggestions and please feel free to use or ignore as you see fit. Generally speaking, it's up to you, the GSoC developers, to resolve as best you see fit.

Specifically, your suggestion Quin of

"name the class something else for the time being, then, if need be, the class name can be refactored later on"

is a good one.

Some other ideas:

- communicate directly with other GSoC'ers if you think you're going to "step on their toes" and resolve in a manner that makes sense to you.

- don't commit back to the subversion branch until you're fairly certain you won't be breaking other people's stuff.




12 June 2007 at 12:40pm Google Summer of Code Hacker, 39 Posts

while the above post is still relevant, i wanted to clarify something
to my knowledge, we have not had any issues with collisions thus far
as you guessed, it is probably still a bit early for that :)

as we are in the 'svn add' phase of things for the most part, these breakages should be more easily avoided
2.0.1 file X has class foo, then a gsoc developer adds file Y and redeclares class foo
that is the gist of the type of problems occurring, along with that, ive seen include path issues in other files

hopefully this clears some things up

my original message for archival purposes:

"Greetings everyone,

As of late there have been a good number of breakages in the gsoc branches of
the subversion repository. I had some of my own ideas for resolving simple
things like class redeclarations (commenting), and Elijah seemed on the same
page. What would be ideal though, is if we could avoid issues like this all
together. As an example, again, a class redeclaration: the developer working
on the code in question could comment it his/herself before committing the code.
Or, even better, name the class something else for the time being, then, if
need be, the class name can be refactored later on. There have also been some
more serious issues that many of us have probably had to deal with, so
resolutions may be more involved in those cases.
I encourage others to send their thoughts on this, as I am surely no authority
on the issue."


14 June 2007 at 4:10am Google Summer of Code Hacker, 222 Posts

I've created a patch to fix the include path issues in sapphire/security/Auth:

I'm going to email Markus and ask him if I should commit it.


14 June 2007 at 4:39am Google Summer of Code Hacker, 152 Posts

Hi Elijah,

first thanks for your message and the patch. I discussed that already with Hayden, but we didn't decide yet how to resolve this issue.

That is (and will be) a common problem with 3rd party libs. There is a very simple way to fix it. Just add the following code to your mysite/_config.php (which unfortunately is not under version control - I posted about a similar problem in the "Help with tabstrip" topic.

$path_extra = realpath(dirname(__FILE__) . DIRECTORY_SEPARATOR . '..') . DIRECTORY_SEPARATOR . 'sapphire' . DIRECTORY_SEPARATOR . 'security';
$path = ini_get('include_path');
$path = $path_extra . PATH_SEPARATOR . $path;
ini_set('include_path', $path);

In that way all the includes will be found and the error is resolved. But that's not a really good solution, we have to find something better... maybe you have a good idea!?

The problem is that we shouldn't change the library because updates will get a pain then.

If you run Silverstripe on Windows, you maybe have to add also

define('Auth_OpenID_RAND_SOURCE', null);

To your mysite/_config.php because Windows doesn't has a random number generator like Linux.


19 June 2007 at 7:37am Google Summer of Code Hacker, 222 Posts

Just a note for anyone running the install from the gsoc branch, I needed to add this to the top of install.php:
/* For OpenID stuff */
$path_extra = realpath(dirname(__FILE__)) . DIRECTORY_SEPARATOR . 'sapphire' . DIRECTORY_SEPARATOR . 'security';
$path = ini_get('include_path');
$path = $path_extra . PATH_SEPARATOR . $path;
ini_set('include_path', $path);
/* End for OpenID Stuff */

Elijah :)