# CGIExt 0.0.3 released - re-implementation of cgi.rb in C extension

**URL:** <https://www.ruby-forum.com/t/cgiext-0-0-3-released-re-implementation-of-cgi-rb-in-c-extension/122084>\
**Category:** Ruby\
**Created:** [December 4, 2007, 2:32pm UTC](https://www.ruby-forum.com/t/cgiext-0-0-3-released-re-implementation-of-cgi-rb-in-c-extension/122084 "2007-12-04T14:32:42Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![makoto\_kuwata](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/a4c791/32.png) [@makoto\_kuwata](https://www.ruby-forum.com/u/makoto_kuwata)\
**Post date:** [December 4, 2007, 2:32pm UTC](https://www.ruby-forum.com/t/cgiext-0-0-3-released-re-implementation-of-cgi-rb-in-c-extension/122084/1 "2007-12-04T14:32:42Z")

</div>

Hi, all.

I have released CGIExt 0.0.3.  
[http://rubyforge.org/projects/cgiext/](http://rubyforge.org/projects/cgiext/)

‘CGIExt’ is a re-implementation of ‘cgi.rb’ in C extension.  
It makes your web application faster.

Currently, not of all functions are implemented.

Notice: This module is still ‘alpha release’ and it’s specification  
may change in the future.

This release is for bugfix.

- Bugfix
  - CGI.escape() didn’t convert ’ ’ to ‘+’ in some cases
  - CGI.unescape() didn’t convert ‘+’ to ’ ’ in some cases

---

<div class="post-metadata">

**Author:** ![makoto\_kuwata](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/a4c791/32.png) [@makoto\_kuwata](https://www.ruby-forum.com/u/makoto_kuwata)\
**Post date:** [December 5, 2007, 4:47am UTC](https://www.ruby-forum.com/t/cgiext-0-0-3-released-re-implementation-of-cgi-rb-in-c-extension/122084/2 "2007-12-05T04:47:17Z")

</div>

On Dec 4, 2007, at 6:30 AM, makoto kuwata wrote:

> Notice: This module is still ‘alpha release’ and it’s specification  
> makoto kuwata

cfp:~/Downloads/cgiext-0.0.3 \> ruby extconf.rb  
creating Makefile  
cfp:~/Downloads/cgiext-0.0.3 \> make  
gcc -I. -I/opt/local/lib/ruby/1.8/i686-darwin8.9.1 -I/opt/local/lib/  
ruby/1.8/i686-darwin8.9.1 -I. -I/opt/local/include -fno-common -O2 -  
fno-common -pipe -fno-common -c cgiext.c  
cc -dynamic -bundle -undefined suppress -flat\_namespace -L/opt/local/  
lib -L"/opt/local/lib" -o cgiext.bundle cgiext.o -lruby -lpthread  
-ldl -lobjc  
/usr/bin/ld: warning multiple definitions of symbol \_setregid  
/opt/local/lib/libruby.dylib(process.o) definition of \_setregid  
/usr/lib/gcc/i686-apple-darwin8/4.0.1/…/…/…/libpthread.dylib  
(setregid.So) definition of \_setregid  
/usr/bin/ld: warning multiple definitions of symbol \_setreuid  
/opt/local/lib/libruby.dylib(process.o) definition of \_setreuid  
/usr/lib/gcc/i686-apple-darwin8/4.0.1/…/…/…/libpthread.dylib  
(setreuid.So) definition of \_setreuid  
cfp:~/Downloads/cgiext-0.0.3 \> echo $?  
0  
cfp:~/Downloads/cgiext-0.0.3 \> sudo make install  
/usr/bin/install -c -m 0755 cgiext.bundle /opt/local/lib/ruby/  
site\_ruby/1.8/i686-darwin8.9.1

fyi.

looks like a great project. i’m going to test with acgi tonight.

cheers.

a @ [http://codeforpeople.com/](http://codeforpeople.com/)
