Skip to content

deps(deps): bump lua from 1.0.0-rc.1 to 1.0.0-rc.2#50

Merged
jido-steward[bot] merged 1 commit into
mainfrom
dependabot/hex/lua-1.0.0-rc.2
Jun 12, 2026
Merged

deps(deps): bump lua from 1.0.0-rc.1 to 1.0.0-rc.2#50
jido-steward[bot] merged 1 commit into
mainfrom
dependabot/hex/lua-1.0.0-rc.2

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 12, 2026

Copy link
Copy Markdown
Contributor

Bumps lua from 1.0.0-rc.1 to 1.0.0-rc.2.

Release notes

Sourced from lua's releases.

v1.0.0-rc.2

The third release candidate for 1.0.0. Builds on rc.1 with a major table-storage performance win, two non-standard os epoch helpers, and a batch of protected-call / error-value correctness fixes that align pcall / xpcall and Lua.call_function/3 with Lua 5.3 §6.1. The public API is unchanged from rc.1.

Performance

  • Split-storage tables (Erlang :array + map) — dense 1..n integer keys route to an :array for O(1) functional read/write; other key types stay in the hash map. Table-heavy workloads improve 28–37% at n=1000 (Build −36%, Iterate/Sum −36%, Map+Reduce −37%, Sort −28%) and now beat Luerl on Build/Iterate/Map+Reduce (#328).

Added

  • os.time_ms() / os.time_us() — non-standard epoch helpers for sub-second precision (os.time() unchanged). The os.clock() origin is now seeded in install/1 rather than lazily, so elapsed time measures from a stable startup point (#340).

Fixed

  • deflua/2 guarded heads registered under :when instead of their real name, making them uncallable from Lua (#344).
  • Lua.call_function/3 returns the terse Lua error value, not the terminal render (#336).
  • pcall / xpcall pass the raised value through verbatim and add the §6.1 source:line: prefix (#334).
  • Protected calls no longer roll back heap effects on error (#331).

Known issues

  • Deep recursion remains ~25% slower than rc.0 (carried forward from rc.1; per-call depth bookkeeping). To be addressed before 1.0.0 final.

Full changelog: https://github.com/tv-labs/lua/blob/v1.0.0-rc.2/CHANGELOG.md

Changelog

Sourced from lua's changelog.

[v1.0.0-rc.2] - 2026-06-10

The third release candidate for 1.0.0. It builds on rc.1 with a major table-storage performance win, two non-standard os epoch helpers, and a batch of protected-call and error-value correctness fixes that bring pcall / xpcall and Lua.call_function/3 in line with Lua 5.3 §6.1. The public API is unchanged from rc.1.

Performance

  • Split-storage tables (Erlang :array + map) — dense positive-integer keys (1..n) now route to an Erlang :array for O(1) functional read/write and dense iteration ordering, while strings, sparse/non-positive integers, and other key types stay in the hash map with the existing iteration bookkeeping (#328). String-keyed reads (globals, fields, metatable lookups) are unchanged. Table-heavy workloads improve 28–37% at n=1000 (Apple M4, lua chunk path): Build −36%, Iterate/Sum −36%, Map+Reduce −37%, Sort −28%. Build, Iterate, and Map+Reduce now beat Luerl; Sort closes most of the gap.

Added

  • os.time_ms() and os.time_us() — non-standard extensions returning the current epoch in milliseconds / microseconds, for programs that need sub-second precision (os.time() is unchanged and still returns whole seconds). Both are current-time-only and are documented as extensions not present in PUC-Lua (#340).
  • The os.clock() monotonic origin is now seeded in install/1 rather than lazily on the first call, so elapsed time is measured from a stable startup point instead of drifting to whenever a program first happened to call os.clock() (#340).

Fixed

  • deflua/2 guarded heads register under their real name (#344). A guarded head with no state argument (deflua clamp(a) when is_integer(a)) was registered under the name :when instead of clamp, making it uncallable from Lua (calling it raised an undefined-function error). The macro now unwraps the :when AST node to reach the real name, matching the deflua/3 (state-arg) variant, which was never affected.
  • Lua.call_function/3 returns the terse Lua error value, not the terminal render (#336). Its {:error, reason, _} previously surfaced the terminal-formatted error string — ANSI escape codes, the at <source>:<line>: header, the Suggestion: block, stack-trace frames, and a doubled Lua runtime error: … runtime error: prefix — where a programmatic value was expected. reason is now exactly what pcall hands back (§6.1): the source:line:-prefixed message for string errors, and the raw value (table/number/nil/false) passed through verbatim for non-string error

... (truncated)

Commits
  • 32a9ef7 chore(release): 1.0.0-rc.2 (#345)
  • 4ef8377 fix(api): deflua/2 preserves function name for guarded heads (#344)
  • 49ce267 feat(os): seed os.clock origin at install, add os.time_ms/os.time_us (#340)
  • 1263943 fix(vm): return terse Lua error value from call_function, not terminal render...
  • 44b876f test(vm): silence unused variable warning in pcall error-value test (#338)
  • effcb29 chore(website): refresh OG image layout (#339)
  • 9c3f2b2 fix(vm): pass raw error values through pcall and add §6.1 position prefix (#335)
  • a558050 fix(vm): keep heap effects across protected-call error unwinding (#333)
  • 50f7398 feat: add posthog (#332)
  • 57c4618 chore: use elixir 1.20 in CI (#329)
  • Additional commits viewable in compare view

@dependabot @github

dependabot Bot commented on behalf of github Jun 12, 2026

Copy link
Copy Markdown
Contributor Author

Labels

The following labels could not be found: elixir. Please create it before Dependabot can add it to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@dependabot dependabot Bot added the dependencies Dependency updates label Jun 12, 2026
Bumps [lua](https://github.com/tv-labs/lua) from 1.0.0-rc.1 to 1.0.0-rc.2.
- [Release notes](https://github.com/tv-labs/lua/releases)
- [Changelog](https://github.com/tv-labs/lua/blob/main/CHANGELOG.md)
- [Commits](tv-labs/lua@v1.0.0-rc.1...v1.0.0-rc.2)

---
updated-dependencies:
- dependency-name: lua
  dependency-version: 1.0.0-rc.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot force-pushed the dependabot/hex/lua-1.0.0-rc.2 branch from 18f3266 to 7ecc7ae Compare June 12, 2026 13:26
@jido-steward jido-steward Bot merged commit e23fc81 into main Jun 12, 2026
18 checks passed
@jido-steward jido-steward Bot deleted the dependabot/hex/lua-1.0.0-rc.2 branch June 12, 2026 16:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Dependency updates

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants