Maintain benchmark suite and publish reproducible comparisons
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 354
- Forks
- 72
- PR merge metrics
- No merged PRs in 30d
Description
Current status
The repository now has Go benchmarks for parsing, rendering, drops, expressions, and filters. The stale engine benchmark templates were repaired in #148, and the full suite executes with:
cgo-test -run "^$" -bench . ./...
This issue remains open for turning those benchmarks into a maintained, useful performance suite.
Remaining work
- Select representative fixtures for parsing and rendering rather than relying only on small synthetic templates.
- Add a fast CI smoke check that compiles and executes each benchmark once, without treating noisy timing changes as regressions.
- Document reproducible local benchmark commands, including
benchstatcomparisons. - Record Go version, OS, CPU, benchmark count, and dependency versions with published results.
- Evaluate cross-engine comparisons against current Liquid implementations using equivalent fixtures and clearly documented semantics.
- Keep performance claims separate from correctness and compatibility claims.
References
Contributor guide
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.
Research direction
Start by running cgo-test -run "^$" -bench . ./... to inspect the existing Go benchmark suite, then review the referenced comparison projects and remaining-work list. Done means representative fixtures, a non-regression CI smoke check, reproducible benchmark documentation, recorded environment metadata, and clearly scoped cross-engine comparisons.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- performance, testing, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100