couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jason Smith <>
Subject Re: undefined reference to JS_SealObject
Date Tue, 25 Oct 2011 08:29:14 GMT
On Tue, Oct 25, 2011 at 6:54 AM, CGS <> wrote:
> Hi Jason,
> First of all, good job that you thought to share from your experience and
> put everything into a package.
> Just out of curiosity, I would like to ask you few questions if I may.
> 1. I noticed you put all the dependencies in your project (or at least most
> of them). Why didn't you use wget (or git or whatever) instead to bring them
> locally from the projects web pages?

CouchDB could run anywhere. We should be able to burn a checkout onto
a CD-ROM and install offline.

> 2. I also noticed you used log files for some processes while for others
> there are no such file (e.g., for icu you used config.log, but you didn't
> add also the the compilation and installation to that log). Is there a
> reason or just the time didn't allow you to add logs for that? I am sorry if
> this question is not correct, I see that scripting language for the first
> time (I use BASH/AWK/SED and maybe few more for scripting).

Build CouchDB was debugged into existence. Every feature was made to
solve some purpose at some time. I have not (intentionally) made
anything consistent. I have not worried about architecture or best
practices. Instead, I focus on continuous testing and confirming that
it works on every operating system. Once CouchDB is built, you never
run build-couchdb ever again.

> 3. And one last thing related to the choice of scripting language. Is there
> a reason you chose rake or it is just because you feel yourself "at home"
> with it?

Rake is an excellent domain-specific language for accomplishing stuff.
It is nice for building software because you can mix file tasks (like
Make) and also abstract tasks (like Ant). Rake is based on Ruby which
is widely-available, probably second-best language (after Perl): it is
bundled in the operating system by every Linux distribution and OS X;
and it is very convenient to install on Solaris.

> Don't get me wrong, my intention was never to criticize your work. I think
> you did great especially that you shared it with all of us. I am just curios
> because I've seen different ways to do the same job and I am trying to learn
> which one is the most suitable for such a job (maybe I will follow it as
> well because I am doing also some sys admin work).

Totally. Sometimes I joke that build-couchdb is the worst thing I've
ever made; however, to a large extent, it is necessarily complex and
unaesthetic because the job it must perform is complex and

Iris Couch

View raw message