18 Jul 2012
You might have noticed that suggesting projects is currently a bit tricky: When passing in a Github repo path, the form tells you that the repo does not exist. This is due to Github's API v2 killoff. Whenever you try to submit a project it checks whether that repo exists. Unfortunately, because the Github API now 404's, the form thinks you're trying to pass in bogus data...
Since the data updaters are entirely rewritten and work on Github API v3, this particular thing would be easy to fix, but there's two reasons I did not do this:
- I'm currently refactoring, rewriting and cleaning up huge chunks of the app and due to this can't deploy a full version since some things might be broken. Among others I chose to ditch the test-unit/shoulda combo in favor of a completely new RSpec test suite. When I started writing the new Toolbox on some Rails 3 prerelease it was not so clear I was betting on the wrong horse there. At least now the test coverage is better than ever, and digging through all of the source code forced me to clean up a lot of stuff. Quite a few "what the hell did I do there?" moments, I can tell you...
- Of course I could rollout a fix for this particular bug, but since you guys write so much great OSS I'm already knee-deep in project suggestions and have trouble working through them in the current process.
To address point 2: Part of the next release will be a hugely revamped process for suggesting projects. In a first step, the separation between first-class Projects and mere Rubygems will be removed. All gems will also become projects, though of course without a category by default. This will allow you to post resources on them, like and comment and so on.
On a side note for gem authors: Please make sure your gems have a valid link to their github repo on Rubygems.org in the homepage url (via gemspec) or the source code url (via Rubygems admin UI). When the next release arrives, the gems transitioned to projects will automatically be linked against github repos if you have a legit repo link in there. This will save us all a lot of edits, so please do it now.
After this migration is complete, anyone will be able to edit projects. For the sake of simplicity for now I'll still have to review those, but the process will already be much easier and more open (read: visible to anyone, commentable by anyone so you can blame me for being slow etc.). In a next step I'd like to hand this over to the community in a voting process similar to what Musicbrainz does so the process is as open and community-driven as possible.
I can understand some of you get frustrated about their projects not being added to the Toolbox in a reasonable amount of time, and I'm sorry for that. Please understand that I'm a single guy running this site, and the time I can put into it varies. My focus in recent (holiday) weeks was on pushing the things I mentioned above forward, so there was little time for "other stuff".
Ultimately, the current big refactoring will lead us to a state where I feel comfortable with open sourcing the Ruby Toolbox both without feeling ashamed of the pile of ugly or crude codes I wrote and feeling comfortable about the test coverage, which is crucial for accepting pull requests and getting a mighty open source drive behind it.
Also, in the next weeks I plan to add a couple of folks to the team as reviewers for the aforementioned project change requests. I already have a couple of guys who'd like to do it, but if you're interested drop me a line to christoph at ruby-toolbox com or via @rubytoolbox or @thedeadserious so we can get this going soon!
I'll also launch a mailing list for interested contributors, be it as coders or community reviewers. Please check back here or on Twitter for updates on this.
I hope you're doing fine, cheers!