Copas is a dispatcher based on coroutines that can be used by TCP/IP servers.
Lua Makefile
Pull request Compare This branch is 10 commits behind keplerproject:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Copas 2.0

Build Status Coverage Status

Copas is a dispatcher based on coroutines that can be used for asynchronous networking. For example TCP or UDP based servers. But it also features timers and client support for http(s), ftp and smtp requests.

It uses LuaSocket as the interface with the TCP/IP stack and LuaSec for ssl support.

A server or thread registered with Copas should provide a handler for requests and use Copas socket functions to send the response. Copas loops through requests and invokes the corresponding handlers. For a full implementation of a Copas HTTP server you can refer to Xavante as an example.

Copas is free software and uses the same license as Lua 5.1 to 5.3 (MIT), and can be downloaded from its GitHub page.

The easiest way to install Copas is through LuaRocks:

luarocks install copas

For more details see the documentation.