I don't often update one of the few #Lua packages I maintain; but when I do it's “wcwidth”, updating the Unicode data from version 13 to 17, adding support for ambiguous-width characters, adding a no-AI/LLM contributions policy (based on @zig's), and moving the repository to https://codeberg.org/aperezdc/lua-wcwidth

The old repository is kept for now as a read-only mirror, to avoid breaking links; but development will happen in #Codeberg going forward.

lua-wcwidth

Pure Lua implementation of the wcwidth() function

Codeberg.org

There goes another #Lua module: “shelve” → https://codeberg.org/aperezdc/lua-shelve

This one does what you would expect, if you know what the Python module of the same name does: serializing values to and being able to deserialize them back. It can be built both against GDBM and NDBM.

This is one of my oldest published *useful* pieces of code: The Git history goes back only ten years back; but I wrote the first version of this back in 2002, with the first ChangeLog entry in 2003. No idea why I chose version 0.33 as the first one to make a release for; but I clearly remember the motivation being using this as the storage for a *very* janky small wiki that worked as a CGI script. Good times! 👴

lua-shelve

Serialization and on-disk persistence for Lua values

Codeberg.org