lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


Thank you for the release, Thijs!

Copas is a fantastic project in the Lua ecosystem, which has been around for a very long time and still progresses steadily. Open Source at its best.

-- 
Pierre Chapuis


On Fri, Nov 12, 2021, at 09:35, Thijs Schreijer wrote:
Hi list,

I’m happy to announce the final new Copas release, the first in 4 years.

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 TLS support.

Though the version of the previous RC was 2.1, the final became 3.0.0 since there was a small breaking change. But the new major version also does justice to the list of new features, most notably the support for timeouts on socket operations, and the addition of synchronisation primitives.

Installation is as simple as: "luarocks install copas"
Github repo: https://github.com/keplerproject/copas 


Some main new features:
- [FINALLY!] copas.settimeout() so Copas can manage its own timeouts instead of spinning forever
- SNI support in the TLS handshake
- timer class, see module "copas.timer"
- lock class, see module "copas.lock"
- semaphore class, see module "copas.semaphore"

Many thanks to the contributors! This release contains contributions from; @amyspark, Patrick Barrett, Hisham Muhammad, Francois Perrad, Francisco Castro, and myself.

Regards,
Thijs