[typo] Problems with upgrade

Anton J Aylward aja at si.on.ca
Mon Aug 11 14:43:51 EDT 2008

de Villamil Frédéric said the following on 11/08/08 12:58 PM:
> Le 11 août 08 à 18:28, Anton J Aylward a écrit :
>> Matijs van Zuijlen said the following on 11/08/08 11:27 AM:
>>>> Is this set of dependencies (on the compiler etc) declared anywhere?
>>> The precise set of dependencies will depend on the distribution used.
>>> That said, some general hints might be a welcome addition to the  
>>> wiki.
>> At the very least the set of Ruby dependencies could be made clear.
>> I asked why I have to go though this - 'this' being installing  
>> compiled and "-devel" packages from my RPM - to run typo.  Part of  
>> the reason I asked this was because Typo 4.1.2 needs sqlite3- 
>> ruby-1.2.2 when I already had sqlite3-ruby-1.2.1 installed.  That is  
>> why it required the compiler etc.  All my other ruby applications  
>> were running fine with sqlite3-ruby-1.2.1, and the need to upgrade  
>> that was not documented and was not made clear in this thread.
>> I'm still hoping for an explanation of this change and why its not  
>> an artefact of one of the developers choices in packaging rather  
>> than a functional necessity.
> I think I've already explained this somewhere, either in the  
> CHANGELOG, or on Typo blog or even here, but I will do it once more.  
> Bis repetita semper placent as used to say my latin teacher.
> When packaging an application like Typo – or let's say Wordpress – you  
> need to decide for which environement you do it. This happens in  
> particular when choosing the default database. By default, a clever,  
> or supposed to be so, project team will choose the most widespread and  
> common one, which happens to be MySQL, just like, let's say,  
> Wordpress, as it seems to be the reference here.


Lets take this in parts.

1. The guys at Rails seems to have switched to sqlite as the default
     for the development environment.  I don't know in detail why they did
     that but for a limited situation where the application is being
     reloaded every time, the inefficiencies of sqlite are outweighed by
     other factors.  Probably the simplicity of not managing a server
     while doing "just" development has something to do with that.

2. I have BOTH sqlite and MySQL on my laptop.
     When it came to install the Typo-5.1.2 gem the installer insisted
     on compiling new(er) versions of BOTH the MySQL and the sqlite
     ruby drivers.

     At Dreamhost, which I still can't get the upgrade working and have
     continued to report the problems here and identified them as being on
     Dreamhost rather than the 'virgin' install on my laptop, I have
     always run Typo with MySQL.

> I don't know why sqlite3 was choosen as a default before, maybe  
> because it didn't need mysql server to be installed before having a  
> running Typo. But the truth is it was pretty stupid IMHO. Since it's  
> made of a single flat file, sqlite just locks the database for every  
> non reading process, which includes INSERT, DELETE and UPDATE.  
> Creating a session, since we're using ActeiveRecord session handler is  
> part of it, like commenting, or creating a post. In other words,  
> sqlite MUST NOT be used for a production web based multiple users – at  
> least visitors – application. Sqlite is perfect for creating index on  
> Mail.app or any other desktop since I'm the only one to access it, but  
> not on the internet.

It is also perfect in the 'single user' development context as well,
which is, no doubt, why the Rails people recommend it as such.

But, as I said, trying to install Typo-5.1.2 on my laptop, which already
had the Ruby MySQL driver installed and a number of RoR applications
running using MySQL, most notably Radiant and the "What's next".

As far as Typo on Dreamhost goes, sqlite is NOT, repeat NOT, repeat NOT
being used.  But when I took a dump of that database and tried
Typo-5.1.2 against it on my laptop, the gem still insisted on compiling
a new(er) version of the interface.

So the point I am making is not about the strengths or weaknesses of
sqlite vs MySQL; it is that I had functional versions of Ruby interfaces
for both and operating RoR applications using both, yet the gem install
of Typo-5.1.2 insisted on "upgrading" both sqlite and mysql drivers.

I've asked and I'm still asking: what is the deficiency in the old
drivers than necessitated this upgrade or is it just an artefact of the
way the gem was packed on that particular development machine?

> The funniest part of the story is that, when sqlite was the default  
> dependency, people used to complain of the sqlite dependency when they  
> used MySQL / PgSQL.

Back when the RoR guys had MySQL a their default I used that.
As I said, the problem when I did the virgin install on my laptop was
that the instructions on the Wiki said to install the gem first.  This
was before I had run "typo install ..." to create the
"config/database.yml".  It was the install of the gem that raised the
dependency and required new versions of the MySQL and SQlite rivers to
be compiled.  This has nothing whatsoever to do with any choice of
database I might or might not later make for the application.  It holds
true even if then decide not to use Typo and leave the gem undisturbed.

> I've been recently thinking in 3 directions :
> – embedding all the dependencies in vendor/gem, but this will create  
> issues with native gem extensions, like MySQL ones.

... Just so long as you document it clearly ...

> – completely removing the Typo installer, only leaving sources, and a  
> list of dependencies. Since gem install now completely fullfills them,  
> I won't care at all about what happens.

Perhaps that slit should be there anyway ...

> – having typosphere.org redirecting to wordpress.com since it's what  
> people here want, mostly spending time crying and complaining, and  
> eventually thinking you can play the BOFH without knowing how to play  
> with UNIX.

I've known how to play with UNIX for over 30 years and played with more
versions than are currently available.

I believe in diversity and only ran Wordpress since Dreamhost offered it
as a one-click install when I needed to get something up fast.  When it
came to the Typo4.0.3 version I took great care and crafted and
customized and had a good time. I like Rials and I prefer Ruby and don't
think PHP is really OO.  My mention of wordpress was as a comparison of
the ease of upgrade, not a comment on function or preference.

> – just starting something else, leaving the project dead, just like it  
> was when I took over it.

I tried upgrading the 4.0.3 installation using the instruction on the
Wiki and met with the problems I've documented in this thread.  You'll
note it began with that and that's why I used the subject like "Problems
with upgrade" rather than with install.

I tried doing a virgin install following the instructions on the Wiki
and met the problems I've documented.  The Typo documentation does say
in the README "Typo supports MySQL, PostgreSQL, and SQLite" but when I
describe the problems I have had with both MySQL and with SQLite I get
met with sarcasm and derision.  I dread trying PostgreSQL.
"Television is a medium because it is neither rare nor well done."
   -- Fred Friendly

More information about the Typo-list mailing list