Tuesday, October 14, 2008

ColdFire Contribution

Ok, I'm not much on blogging, but I wanted to post that I have finally contributed to open source.

Sammy Larbi has interested me in OSS contribution, but I never saw anything to contribute toward. last week, I discovered where ColdFire wasn't acting the way I wanted it to. I took a look at the cfm file, and made some changes that worked. i submitted them to Nathan Mische. Nathan responded that the cfm wasn't the problem, but would look into it.

Nathan pointed me away from the cfm, so I decided to take a look at how ColdFire works (it's mostly js). I dug around, and change about 50 things trying to make it work. In the end, Nathan accepted the patches for the cfm. I believe these directly affected 2 open tickets. I believe the report contributed to his fix on the 3rd ticket. Those changes were relased here:

http://coldfire.riaforge.org/blog/index.cfm/2008/10/13/ColdFire-129595

Unfortunately, these fixes did not change anything for my problem. I sent Nathan an e-mail about 30 minutes prior to the 1.2.95.95 release letting him know that I had the fix for my issue. I admitted that I didn't like the fix, but it does work and does not cause any harm. Nathan responded letting me know he accepted the patch for the js. I really like his response:

"I think that is a good fix. ... I agree that the fix is a bit of a hack, but it is a pretty darn good one."

I had a CFSQLType of CF_SQL_CHAR. The value passed was 20081001. It was interpretted as a number instead of a string. The hack was simple. value = value + ""... now it's a string.

In the end, this was a lot of fun. I've been slowly getting into the js world as I am implementing pieces of jquery into my apps. I may begin to contribute more now that I've got a patch under my belt.

You can go to just about any post from Sammy regarding open source.
http://www.codeodor.com/

I also found this article important in actually posting this:
http://www.mischefamily.com/nathan/index.cfm/2008/7/16/Contributing-to-OSS

No comments: