Posted: July 13th, 2009 | Author: FreedomCoder | Filed under: Open Source, Programming, SQL | Tags: Open Source, Programming, sqlite3 | No Comments »
So, I think this may be good news for some folks.
February 24, 2009 is the date that Jamis Buck marked as the end of several of his open source projects, including SQLite3/Ruby. (you can read the post here)
Previously, he asked for help updating SQLite3/Ruby to make it work on Windows.
That sad news left a lot of us with a bad taste, and very unhappy, not because we no longer will have someone to complain at, but because he no longer enjoyed working on those projects.
Over the past months I’ve been improving rake-compiler to be able to catch most of the building issues of several projects, including my own (I love to scratch my own itch).
As you have noticed on my “getting started with Rails and SQLite3″: http://blog.mmediasys.com/2009/07/06/getting-started-with-rails-and-sqlite3/ post, I successfully built, installed and used a SQLite3/Ruby gem on Windows.
The next question was, what to do? The work to get all those lovely gems was there, initial 1.9 was there, but was not official
While SQLite3/Ruby being the de-facto for getting started with Rails, we couldn’t let it die.
Enough words, sent some emails to Jamis and now I can publish those gems to RubyForge.
What all that babbling means?
This means:
- My fork at GitHub is the new mainstream for the releases
- I’m going to go over the open bugs and tickets and asses validity and relevancy based on work that was already done in my fork.
- The release cycle has been improved and almost automated. It can be performed from Windows, Linux or OSX, even using latter to create Windows native gems.
Now, what happens with new features:
- Pull requests with patches and bug fixes are going to be accepted.
- New features will be evaluated as long they don’t impose structural changes and carry with them tests cases.
- Patches that improve Ruby 1.9 compatibility are highly appreciated.
I don’t have strong knowledge of all the internals of this tool, so don’t expect earth breaking changes from me, except ensuring stability.
I hope this is good news to everybody. Now I’m going to stalk MySQL binding author and get permission to push those lovely gems
Cheers everybody!
(Via DEV_MEM.dump_to(:blog) – Multimedia systems blog.) Original Link: Stepping up as SQLite3/Ruby maintainer
Posted: July 7th, 2009 | Author: FreedomCoder | Filed under: Rails, SQL, how-to | Tags: how-to, Rails, sqlite3 | 1 Comment »
A few folks asked this over the past weeks, and since I released preview1 version of RubyInstaller, wouldn’t be awesome I write a guide for it?
So, here we go
First, Getting Ruby
Please download from here one of the preview1 installers for Ruby.
For this demonstration, I’m going to use Ruby 1.9.1-p129. Downloaded, executed and installed to it’s default location C:\Ruby19
Now, start a Command prompt with Ruby (under start menu, inside Ruby 1.9.1-p129).

Getting SQLite3
As you may know, Windows do not came out of the box with libraries like SQLite3. For this, we are going to download it from Internet.
Going to SQLite downloads, under Precompiled binaries for Windows, download sqlitedll-3_6_16.zip and sqlite-3_6_16.zip. Those two packages contains the DLL (sqlite3.dll) and the command line executable for SQLite (sqlite3.exe).
Please extract those contents inside C:\Ruby19\bin
Now, let’s get the Ruby bindings for SQLite3
Getting SQLite3/Ruby bindings
As you may know, the preferred way to distribute Ruby libraries is using Gems. Users on other platforms usually compile themselves these components, using the mechanisms provided by the operating system distribution.
We are going to avoid the compilation process using pre-compiled binaries that has been cooked for us.
So, back to the Command Prompt with Ruby, let’s install the sqlite3 bindings:
gem install sqlite3-ruby --source http://gems.rubyinstaller.org
Adding --source help us indicate a non-standard location from where gems are going to be installed. RubyInstaller team has built and packaged special versions of these gems that we hope get published soon into RubyForge, the official place for gem distribution.
Once installed, you should see something like this at the screen:
Successfully installed sqlite3-ruby-1.2.4.1-x86-mingw32
1 gem installed
These special version of the gem are fat binaries, which means these can be safely installed on Ruby 1.8.6 or 1.9.1.
Getting Rails
Now it’s time to install and build a Rails application. First, let’s install the rails gem:
gem install rails
That command is going to take a bit, since is a 2MB or so download, and will install several of the Rails dependencies (ActiveRecord, ActionPack, ActiveSupport, etc). You should expect similar output to this:
Successfully installed activesupport-2.3.2
Successfully installed activerecord-2.3.2
Successfully installed actionpack-2.3.2
Successfully installed actionmailer-2.3.2
Successfully installed activeresource-2.3.2
Successfully installed rails-2.3.2
6 gems installed
Let’s build our application now.
Creating a Rails application.
Let’s call the application railsapp
rails railsapp
An excerpt of the output you should get:
create
create app/controllers
create app/helpers
create app/models
create app/views/layouts
create config/environments
create config/initializers
create config/locales
create db
...
Rails 2.3.2 defaults it’s database format to SQLite3, so there is no need for us to tweak anything.
Checking if everything is ok, using script\about:
cd railsapp
ruby script\about
And the output should be something like this:
About your application's environment
Ruby version 1.9.1 (i386-mingw32)
RubyGems version 1.3.4
Rack version 1.0 bundled
Rails version 2.3.2
Active Record version 2.3.2
Action Pack version 2.3.2
Active Resource version 2.3.2
Action Mailer version 2.3.2
Active Support version 2.3.2
Application root C:/Users/Luis/railsapp
Environment development
Database adapter sqlite3
Database schema version 0
Now, it’s up to you create your models, controllers and everything.
Some notes and considerations.
At the time of this writing, Mongrel has not been updated to build and install properly either on 1.9 or MinGW versions of Ruby.
As part of Mongrel development team, I’m going to work on a solution for this in the upcoming days.
If you find something wrong with the Ruby Installer, please report here, but issues with your code, Rails or other are not responsability of RubyInstaller.
The binary gems provided at gems.rubyinstaller.org are based on our forks of sqlite3-ruby, which can be cloned and explored here at GitHub.
Keep in mind that some gems would not work under Ruby 1.9, or you will need a compiler (DevKit) for it. See previous post with details how to get those from our download page.
(Via DEV_MEM.dump_to(:blog) – Multimedia systems blog.) Original Link: RubyInstaller: Getting Started with Rails and SQLite3