{Detached} Mysql Gem and beyond: Fixing, Supporting and Celebrating

E

Edmond Kachale

[Note: parts of this message were removed to make it a legal post.]

2010/9/20 Luis Lavena said:
Really? How? Please provide the real details.

I package the MySQL/Ruby extension as a gem and tested in Ubuntu, Snow
Leopard, Leopard and even Windows.

Please be more specific on what you mean by that.

It is clear from the mkmf.log output that either the wrong mysql or
the wrong compilation options are attempted to be feed into the
compile process.

Sorry my fellow Rubyster. I did not intend to hurt you by this mail. I
really appreciate every effort that each developer puts on the gems/plugins
that we have around. For sure this cannot be taken for granted.

But when I said "The whole gem is messed up seriously.", I actually meant
that. It might not be you, but something else beyond your imagination,
something else beyond your control. It might be the change in the OS
architecture that has "messed up" the cool gem. And above all, as you
rightly put it, it might be the user's way of installing essential
applications and libraries. All these may "mess up" the nice mysql gem. All
in all, I was necessarily pushing the whole blame on the developer. (May be
my tone was wrong).

I install ruby and mysql as follows:
sudo apt-get install ruby mysql-server libmysql-ruby mysql-client
mysql-server ruby libopenssl-ruby mysql-server-core rubygems

I have a script

I do not know if there is any problem in installing like this. I like using
apt-get/aptitude to make sure install those packages that are recommended by
Canonical/Debian.

Personally, there was only one time mysql gem worked for me. It was last
year, and the gem was an earlier version. Thereafter, it has never worked
for me. When I googled, I found that other people had similar problems with
the mysql gem (Check this one out: http://bit.ly/diSVJP).

Every Rubyster knows and appreciates that this gem is cool and significant.
I think what is needed is to get more support from the Ruby community and
work on the *"usual"* errors ((RuntimeError) ERROR: *Failed to build gem
native extension*). My feeling is any gem should be easy to install even for
*"non-developers"* (such as software deployment officers) just by the touch
of the "*gem install"* command. The gem should resolve all the dependencies
and supporting libraries within itself.

Let everyone get me clear, I am not blaming the mysql gem core-developer or
anyone for anything. But I think we can help our fellow friend in fixing the
gem. We can folk it on GitHub <http://github.com/luislavena/mysql-gem>, play
with it on our local machines and share our experiences with the core
developer, just as other gems have received similar attention. Then we can
celebrate the victory together as a fraternity.

Regards,


Edmond
Software Developer | Baobab Health Trust (http://www.baobabhealth.org/) |
Malawi
Cell: +265 999 465 137 | +265 881 234 717
*"Every Rubygem has its own gemspec" -- Edmond Kachale*
 
L

Luis Lavena

But when I said "The whole gem is messed up seriously.", I actually meant
that. It might not be you, but something else beyond your imagination,
something else beyond your control. It might be the change in the OS
architecture that has "messed up" the cool gem. And above all, as you
rightly put it, it might be the user's way of installing essential
applications and libraries. All these may "mess up" the nice mysql gem. All
in all, I was necessarily pushing the whole blame on the developer. (May be
my tone was wrong).

I install ruby and mysql as follows:
sudo apt-get install ruby mysql-server libmysql-ruby mysql-client
mysql-server ruby libopenssl-ruby mysql-server-core rubygems

If you installed libmysql-ruby then you're not using mysql gem but
Debian packaged version of it which has been tailored for mysql
dependencies.
Personally, there was only one time mysql gem worked for me. It was last
year, and the gem was an earlier version. Thereafter, it has never worked
for me. When I googled, I found that other people had similar problems with
the mysql gem (Check this one out:http://bit.ly/diSVJP).

There has been lot of problems where it mentions mysql gem, either on
Windows or other platforms. But there has been more success than real
reports of these failures.

Actually a report of mysql gem bug in MySQL forum do not help get the
issue fixed. Instead, reporting here (ruby-talk) is highly likely
receive more attention.

There has been lot of pain about maintaining a gem that is not even my
code.

Perhaps I should leave everybody using the extension directly, as tmtm
(the author) did.

Also note that mysql/ruby has been "dead" by the author for about 2
years. he decided to invest time on ruby/mysql library instead:

http://github.com/tmtm/ruby-mysql
Every Rubyster knows and appreciates that this gem is cool and significant.
I think what is needed is to get more support from the Ruby community and
work on the *"usual"* errors ((RuntimeError) ERROR: *Failed to build gem
native extension*). My feeling is any gem should be easy to install even for
*"non-developers"* (such as software deployment officers) just by the touch
of the "*gem install"* command.  The gem should resolve all the dependencies
and supporting libraries within itself.

The usual errors are simple, but I believe people needs to understand
what those are.

For example, the lack of mysql development dependencies can make the
compilation process fail.

The lack of ruby development headers and libraries will make the
compilation process fail.

Even worse, the lack of compiler can make th ecompilation process fail
(yes, you need build-essentials)

So, you see, you get all that on Debian/Ubuntu distros, more than any
other platform.
Let everyone get me clear, I am not blaming the mysql gem core-developer or
anyone for anything. But I think we can help our fellow friend in fixing the
gem. We can folk it on GitHub <http://github.com/luislavena/mysql-gem>, play
with it on our local machines and share our experiences with the core
developer, just as other gems have received similar attention. Then we can
celebrate the victory together as a fraternity.

Just to make it clear: there is no core developer, I just maintain the
abandoned work from tmtm (the author).

You can fork it and do whatever you want, I'll happily integrate the
changes, but notice that what you get by the mysql gem is pretty much
exact experience of attempting to install the extension directly.

The gem shape is just a skeleton to ease the usage.
 
D

Dave Howell

imagination,

=20
If you installed libmysql-ruby then you're not using mysql gem but
Debian packaged version of it which has been tailored for mysql
dependencies.

Oh, good. I wasn't sure if I'd badly misunderstood 'gemology' at first.=20=


I know there's some kind of controversy about gems and the gem installer =
program. As I understand it, some people feel that optional Ruby =
components (aka "gems") ought to be installed into Linux systems with =
the Linux installer (which for Ubuntu is "apt-get" or "aptitude" or, er, =
apparently there are a multiplicity of things to use (yes, I know =
'aptitude' is a front end for 'apt-get'. One of *many.* Which I do not =
see as a virtue.)).=20

I certainly feel (personally), that if one doesn't install a gem =
_with_the_gem_installer_, one has no ground for complaining about it =
being messed up. It doesn't look like Edmond did that. On the other =
hand, I don't know all that much about that stuff (and try not to; I'd =
rather be learning other things), so I might be ranting from ignorance. =
Just sayin'.

I think, generally, people give far too much weight to anecdotal =
evidence. With that caveat, I will say, again, personally, that besides =
the fact that 'gem' runs on, and has exhibited consistent behavior (to =
me at least) across a much wider range of platforms than any other =
package managment system I know, it also has actually worked correctly =
far more than any other that I've had to deal with, except for the =
native OSX installer. I have had very unpleasant experiences with =
MacPorts/DarwinPorts, apt-get, aptitude, fink, and iInstaller. So this =
is one vote for installing gems with "gem", not with something else. Or, =
rather, one user who is much happier to find that a particular Ruby =
add-on or enhancement is available as a gem, and is dismayed and =
deterred if something is only available as a tarball or an .rpm or the =
like.=20

(OK, "Homebrew" hasn't mangled my system, corrupted libraries, or =
otherwise made things worse instead of better, yet. It's def. my #3 =
favorite package manager.)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,734
Messages
2,569,441
Members
44,832
Latest member
GlennSmall

Latest Threads

Top