The main purpose of this is to backport the improved parse/runtime
errors to older versions. I think they're sufficiently useful that we
should try to make it as widely available as possible.
We've been running them for a week now on SC3 and the released version
and not seen any issues, so I think it's probably stable enough.
This is a pretty lazy commit: I ended up copying the whole ROM over and
then picking up a few other related changes along the way.
- Trim spaces from file paths (b8fce1eecccae652d1128fcf50b57a09eda69dca)
- Correctly format 12AM/PM with
%I (9f48395596131a932fbc37644fe1e4b15ffb6a61)
- Fix http.request and htpt.websocketAsync not handling a few failure
edge-cases correctly (3b42f22a4f36dad0c53bb238e64aada352a063cf).
- Move the internal modules into the main package path, hidden under
cc.internal (34a31abd9ce9106b84549ade2cc30524016107c9).
- Gather code coverage in Java instead of
Lua (28a55349a961c0739adc9d52fc3761c463678be9).
- Make error messages in edit more
obvious (8cfbfe7ceb35e87579b4f6fe8c892e6bce9ed0eb).
- Make mcfly's test methods global. This means we don't need to pass
stub everywhere (7335a892b5742f7879a4ca07f059cd7b8136aa3a).
- Improve runtime and parse errors. This comes from numerous commits,
but chiefly a12b405acfb63d58d6a895e8a8a139ef5c42fbfc, and
55024121817bb112ea68d30e7cb5511a16ccfc94.
- Hide the internal redirect methods in
multishell (33b6f383397d51074bd504a4067253ae65f5b77c).
Note this does /not/ include the shebang changes (sorry Emma!). I've
tried to avoid adding any user-controllable features, mostly because I
don't know how to handle the versioning otherwise :).
I'm not entirely sure how useful all of these will be yet - still
trying to work out what/when to test things, but hopefully this'll
be a useful datapoint.