7.2 - Changes in the Libraries

  • Function string.gfind was renamed string.gmatch. (Option lua_COMPAT_GFIND)
  • When string.gsub is called with a function as its third argument, whenever this function returns nil or false the replacement string is the whole match, instead of the empty string.
  • Function table.setn was deprecated. Function table.getn corresponds to the new length operator (#); use the operator instead of the function. (Option lua_COMPAT_GETN)
  • Function loadlib was renamed package.loadlib. (Option LUA_COMPAT_LOADLIB)
  • Function math.mod was renamed math.fmod. (Option LUA_COMPAT_MOD)
  • Functions table.foreach and table.foreachi are deprecated. You can use a for loop with pairs or ipairs instead.
  • There were substantial changes in function require due to the new module system. However, the new behavior is mostly compatible with the old, but require gets the path from package.path instead of from LUA_PATH.
  • Function collectgarbage has different arguments. Function gcinfo is deprecated; use collectgarbage("count") instead.