Archive for October, 2008

Yet another RC release (Merb 1.0 RC4)

Yesterday, Yehuda Katz annouced Merb 1.0 RC3 released and today we re released the same version with a hotfix (some dependencies got broken).

Here is a quick sum up:

  • improved the testing framework with full webrat integration.
  • merb-action-args works with ParseTree 2.x and 3.x.
  • improved merb-auth
  • dependency “parse_tree”, :require_as => “ParseTree” { # do stuff after the gem is loaded }. You can also pass :immediate => true   (great to use gems from GitHub)
  • improved Windows and JRuby support

1.0 final is expected to be released during Ruby Conf.

On a different note, the MerbCamp videos were released today. Check out the videos there.

A big thank to Patrick Crowley and Rob Kaufman for taking care of the encoding videos.

, ,


will_paginate and Merb

Mislav & Pjhyett‘s will_paginate plugin has been a reference in the Rails world for a little while now. The need for Pagination is arguable, but that’s not the point of this post.

There are few existing pagination solutions for Merb, but people moving from Rails and porting a Rails app will be happy to hear that will_paginate is now Merb compatible (DataMapper and ActiveRecord supported).

Mislav worked hard making sure that his next release will be framework agnostic and hopes to support both Rails 2.2 and Merb 1.0. You can see where is at by checking on his agnostic branch.

I did some work over the week end to make sure I could use will_paginate in one of my project. You can see my work there. I also built a temp gem for you to test WP with Merb until mislav releases the final version of the gem (especially if you are lazy and don’t want to deal with git).



Merb 1.0 RC2

As I’m writing this post, Merb 1.0 RC2 (v0.9.10) is being propagated through all the RubyForge mirrors.

$ sudo gem install merb will install/update Merb Stack. Merb stack is a meta-gem/package installing all the gems you need to get started (including merb-core, merb-more, datamapper and sqlite3 driver)

The main focus for this release was to fix bugs and make the stack Windows compatible. We didn’t get any major bugs in RC1 but fixed a lot of small annoyances and problems with generated resources. We also made sure Merb itself would work properly with Windows (not using incompatible signals etc..) and we spent some time getting the Data Object sqlite3 drivers compiled on Windows.

You don’t need to use DataMapper with Merb, ActiveRecord works fine. However since we are packaging DM with the Merb Stack, we wanted to make sure Windows people would be able to get started easily.

Read the rest of this entry »



Replying to some tweets

I’ve been following what people say on twitter about Merb.

I simply used twitter search engine.

Because I only have a private twitter account I can’t reply to everyone.

freels: I keep expecting merb to have a view helper for random things…

@freels, feel free to let us know about the view helpers you miss. We might not be able to port them all to merb-helpers but we can certainly work something out and maybe come up with more gems so you don’t have to repeat yourself.

@nmeans, as you mentioned it, Merb is a meta-gem installing merb-core, merb-more, dm-core, do_sqlite3, dm-timestamps, dm-types, dm-aggregates, dm-migrations, dm-validations, dm-sweatshop + their dependencies. The reason behind this choice is that merb gem is just a package. You can just use merb-core if you wish and that’s one gem. Installing many gems isn’t a problem, we could even hide it so you don’t see it, but you really care how many gems are installed?

@cfisk we have videos from MerbCamp coming up next week. The wiki is also growing fast and 2 books are being written.
@sco wow, I didn’t know PackRat was built on Merb now. Please let us know if you need help.
brycethornton: Installing the merb gem a while back has led to an unimaginable number of related gems. Wow. I probably only need a few of these.
@brycethornton you don’t have to install the merb gem itself. The Merb gem is a metagem, feel free to only install gems you want. You can generate lighter app by doing merb-gen core app_name or merb-gen flat app_name or a sinatra like app by doing merb-gen very-flat app_name
Thanks, wait for 1.0 and you will enjoy it even more :) Thanks to Ben for merb-cache btw!
rafaelbandeira3: Merb is like the factory of inovative concepts and concepts usage… ruby is nicier now, although ugly, bad formatted and noisy…
I’m confused, it’s probably the first time I hear Ruby us ugly, bad formatted and noisy. I wonder if @rafaelbandeira3 didn’t get confused and looked at a different framework/language. Ruby has its pros/cons but ugly/bad formatted and noisy??? really???
@rarepleasures Ok, this is not really fair because you then twittered and blamed mongrel. Two things about this tweet tho, mongrel is buggy and you probably should be use thin (or fix Mongrel).  If you do think Merb is a big fat FAIL or if there is something you don’t like about Merb, please let us know so we can try to fix it.


Preparing Merb 1.0 RC2

1.0RC1 was released less than a week ago and we are already planning to release RC2 next week or so.

Thanks to all the contributors who reported RC1 bugs and submitted patches. RC2 should iron out most of the small bugs and annoyances encountered.

Rosemary has a very old reputation for improving memory.

Rosemary has a very old reputation for improving memory.

However, RC2 top priority is to get Merb and DataMapper properly working on Windows. Some members of the .net community offered their help to compile windows native DM drivers. Supporting Windows is not an easy task but we think it is a critical thing to do.

We are also discussing setting up a nightly gem server so people could test Merb edge without having to use git etc..  It’s also a great way for us to test gem dependencies before an official release. The only problem with nightly gems is that you need to have a way to track what version is being installed or what version a user reporting a bug is using. We do have some ideas, but please feel free to add a comment with your suggestions.

On a different note, the new wiki is growing nicely, but we do need more content, as you are experimenting with Merb 1.0RC, please think about sharing your knowledge with others by using the wiki.

Finally, people on Edge are reporting issue with gems not loading properly. The problem is that you have generated an app with hardcoded dependencies (check your config/dependencies.rb file). Your app won’t load newer gems and therefore migth crash. Make sure to define the proper dependencies. We are working on  documenting this behavior and making the error message clearer.

, ,


Merb 1.0 RC1

floor 1 full stopzero

R C is for church 1

Few hours ago we finally pushed Merb 1.0 RC1 to rubyforge.

RC stands for Release Candidate. And we will need your help to make a rock solid 1.0 final.

For the occasion, we switched to our new wiki.

Installing Merb stack is now dead easy:
$ sudo gem install merb

Here is a tutorial to get you started with Merb in few minutes.

Read the rest of this entry »

, , , , ,


Merb 1.0 RC1 delayed (by few hours hopefully)

Tonight, the core team members present during MerbCamp got together at my place to prepare and release 1.0 RC1.

The problem is that we spent more time joking, laughing and arguing about the new git system that we didn’t feel right about pushing a release at 4am :(

The git -core and -more repos got merged into a centralized repo. You will notice an active branch and that’s where most of the hacking is going on.

Each core team member has a fork of the project and we all create a new branch everytime we work on a new feature or bug fix. Branch comments get squashed into 1 comment, merged back into the local rebased active branch. The commit get then pulled by Yehuda or pushed to his active branch. Yehuda then make sure all the commits are clean and merge them back in master (edge).

Releases will have their own branches and tags.

People wanting to hack on a specific feature should really fork a core member branch. Usually a core member involved with what you want to work on. Of course that’s optional but whatever you do, if you want to hack on Merb, please use the active branch and not master.

It’s 4:15am, and we are still cleaning up the last few quirks before the release, I know we planned on a releasing today but I guess it’s better to wait few more hours and to get a solid release.

Sorry about that :(