Go to file
Lars Mueller 8d6295bad9 Improve Readme 2022-07-04 16:45:34 +02:00
.luacheckrc A strictness mod is born 2022-06-27 19:38:12 +02:00
License.txt A strictness mod is born 2022-06-27 19:38:12 +02:00
Readme.md Improve Readme 2022-07-04 16:45:34 +02:00
init.lua A strictness mod is born 2022-06-27 19:38:12 +02:00
lua.lua Add math.random strictness 2022-06-29 00:28:22 +02:00
minetest.lua A strictness mod is born 2022-06-27 19:38:12 +02:00
mod.conf Get rid of broken name hack 2022-06-30 22:21:58 +02:00
settingtypes.txt A strictness mod is born 2022-06-27 19:38:12 +02:00

Readme.md

Strictest

Runtime Strictness for Minetest Mods

Strictest consists of two components:

  • Lua strictness: Will disallow string indexing and string - number coercion.
  • Minetest strictness: Disallows usage of deprecated APIs & using entity-only or player-only methods on the wrong type of object.

Particularly useful when writing new mods that don't target older Minetest versions.

Configuration

strictest.action can be set to either error or log:

  • error: Immediately throw an error on strictness violations.
  • log: Merely log the error (including a stacktrace).

Potentially partially redundant with the deprecated_lua_api_handling setting.

Usage

Install & enable strictest, then make sure to optionally depend on it in mod.conf.

Note that runtime strictness always comes at a cost. Running strictest on production servers under heavy load is thus not advisable.


Links: GitHub, ContentDB, Minetest Forums

License: Written by Lars Müller and licensed under the MIT license.