# Ngx\_lua module v0.4.1 released!

**URL:** <https://www.ruby-forum.com/t/ngx-lua-module-v0-4-1-released/216300>\
**Category:** NGINX\
**Created:** [February 1, 2012, 5:08am UTC](https://www.ruby-forum.com/t/ngx-lua-module-v0-4-1-released/216300 "2012-02-01T05:08:39Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![dubstep](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/cdc98d/32.png) [@dubstep](https://www.ruby-forum.com/u/dubstep)\
**Post date:** [February 1, 2012, 5:08am UTC](https://www.ruby-forum.com/t/ngx-lua-module-v0-4-1-released/216300/1 "2012-02-01T05:08:39Z")

</div>

Hi, folks!

I’m happy to announce the v0.4.1 release of our ngx\_lua module. You  
can get the release tarball from the download page:

[https://github.com/chaoslawful/lua-nginx-module/tags](https://github.com/chaoslawful/lua-nginx-module/tags)

Here’s the change log compared to the last formal release, v0.4.0:

- bugfix: ngx.exit, ngx.redirect, ngx.exec, and ngx.req.set\_uri(uri,  
true) could return (they should never return as per the  
documentation). this bug had appeared in ngx\_lua v0.3.1rc4 and  
ngx\_openresty 1.0.6.13. thanks @cyberty for reporting it.

- bugfix: ngx\_http\_lua\_header\_filter\_init was called with an argument  
which actually accepts none. this could cause compilation errors at  
least with gcc 4.3.4 as reported in github issue #80. thanks bigplum  
(Simon).

- bugfix: fixed all the warnings from the clang static analyzer.

- feature: allow use of the DDEBUG macro from the outside (via the -D  
DDEBUG=1 C compiler opton).

You can also view the HTML version of this change log here:

```
http://wiki.nginx.org/HttpLuaModule#v0.4.1

```

Special thanks go to all of our contributors and users!

I’m currently focusing on the ngx\_lua cosocket branch which will  
become the v0.5.x series. With the upcoming cosocket support, we’ll be  
able to code up nonblocking network client drivers for various backend  
services (memcached, mysql, redis, to name a few) in pure Lua, and  
these drivers could be even faster than the old approach that requires  
combining nginx subrequests and nginx upstream modules.

This Nginx module embeds the Lua 5.1 interpreter or LuaJIT 2.0 into  
the nginx core and integrates the powerful Lua threads (aka Lua  
coroutines) into the nginx event model by means of nginx subrequests.

Unlike Apache’s mod\_lua and Lighttpd’s mod\_magnet, Lua code written  
atop this module can be 100% non-blocking on network traffic as long  
as you use the ngx.location.capture or ngx.location.capture\_multi  
interfaces to let the Nginx core do all your requests to mysql,  
postgresql, memcached, redis, upstream http web services, and etc etc  
etc.

This module is also included and enabled by default in our  
ngx\_openresty bundle: [http://openresty.org/](http://openresty.org/)

You can find the complete documentation for this module on the  
following wiki page:

[Lua | NGINX](http://wiki.nginx.org/HttpLuaModule)

And you always get the latest source code from the git repository here:

[https://github.com/chaoslawful/lua-nginx-module](https://github.com/chaoslawful/lua-nginx-module)

Have fun!  
-agentzh
