Tools for dealing with breaking changes in the Numbas runtime and extensions
- Dominant language
- JavaScript
- Stars
- 60
- Forks
- 62
- PR merge metrics
- No merged PRs in 30d
Description
It's frustrating when a change in a new version of Numbas, or an extension, breaks content that used to work.
At the moment, the only thing to do is to change questions to work with the latest version. When you're on a short time scale, such as reusing an exam from last year, this isn't necessarily possible.
A short-term solution would be to choose to compile an exam with an older version of the Numbas runtime (or older versions of extensions).
How would you select this? A "version to use" drop-down in the Settings tab? How do you reconcile different versions specified by questions used in the same exam?
Could editor items record a range of Numbas versions that they work with? As with any metadata, there's a risk that it would become out of date, or not set often enough to be useful.
Need to consider that the compiler doesn't accept unexpected command-line switches, so after a new switch is added, the compilation method would have to know which switches each version supports.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the Settings tab and the compilation method, focusing on how runtime and extension versions are currently selected and which compiler switches each version supports. Define how an older version would be chosen, how conflicting question versions would be reconciled, and how compatibility metadata would remain useful. Done means the project has an agreed, implementable design for these cases.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- build-system, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100