Automated regression testing
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 12/100
Research direction
This is an open brainstorm with no chosen approach: it weighs adapting the upstream Lua test suite against tailoring tests to LuaJIT's deviations, and building JIT trace-regression tooling. Start by deciding which direction the maintainers want, since the payload records no decision. The issue has been silent for over a decade and has no linked pull request, so confirm interest before writing code. Done would mean an agreed test harness that runs in CI.
Written by the indexing model from the issue text.
Description
Currently, hacking on LuaJIT code is difficult because there seems to be no way to test it.
Some thoughts:
- Adapt code from http://www.lua.org/tests/. Sadly LuaJIT severely deviates from Lua in some regards. Either fix LuaJIT to match Rio Lua, or tailor the tests to LuaJIT.
- https://github.com/franko/luajit-lang-toolkit/tree/master/tests might be useful too, though it tests only very basic language features.
- Build infrastructure to test regressions in JIT. @fsfod 's https://github.com/fsfod/LuaJIT/blob/stringbuffer/tests/tracetracker.lua seems interesting
- Collect repros of past bugs into the suite. Both because it's often exotic code which might trigger other buggy behavior in the future or to avoid bugs resurfacing.
- Integrate the tests into CI, so introduced breakage could be discovered early on.
Other ideas?
- Dominant language
- C
- Stars
- 5.8k
- Forks
- 1.2k
- PR merge metrics
- No merged PRs in 30d
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from LuaJIT/LuaJIT
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
-
3.0 enhancement
Difficulty 5/5 Over a week Newbie friendliness 12/100
-
Difficulty 5/5 Over a week Newbie friendliness 18/100
-
Difficulty 4/5 3-5 days Newbie friendliness 30/100
Similar issues
-
area/docs
Difficulty 1/5 Under an hour Newbie friendliness 83/100
Clodmony/starship-coop#72 ·
Maintainers usually reply within 1 day
-
ospf6d: heap-use-after-free in seqnumber_mismatch()/bad_lsreq() when a neighbor is deleted with events pendingPossibly taken @lichenlang89 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 61/100
Maintainers usually reply within 2 days
-
5700模组网络优先级问题Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Maintainers usually reply within 1 day
-
severity: low
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
luainkernel/lunatik#2372 ·
Maintainers usually reply within 1 day