Closed gus-massa closed 5 years ago
This looks sensible to me but I'm not exactly sure what you're asking.
@samth Nothing in particular. But in other occasions you helped when it was necessary to update some of the packages without updating all the packages, and other tricks like that. Thanks for taking a look.
Putting the Chez Scheme bootstrap into a Racket package is a good idea. I'll do that.
You should merge the two fixes, and then I'll catch up with the state of tests. I think it's probably time to clean up and make the tests work as intended, even if that complicates further merging.
I've merged the fixes. It's very strange that cptypes didn't decide to break the code that uses get-initial-thread
.
I'd left the other two commits here in case they are useful for comparison in the future.
There's now a "cs-bootstrap" package, so you can install it and run racket -l cs-bootstrap
in a Chez Scheme checkout.
I'll push updates to the compute-size-increments
and object-backreferences
tests to accommodate/avoid the interpreter. For the format
errors, I'll stick with the main fork's strategy of just including those failures in the expected-error diffs.
Where "fix" means to ignore most of most of the test and fix only two of the other failing tests :).
Most of the failures are just complains about changes in the error message. I think it's easier to keep merging the the main repository if these are ignored.
There are only other three remainder test failing, all in the interpreted version.
Two are about memory management, one about
compute-size-increment
misc.ms#L1099-L1151 and one aboutenable-object-backreferences
7.ms#L4788-L4804. I'm not sure if these are error or the interpreted version has weaker guarantees about memory management.The other chunk of error is about the lack of warnings with
format
with the wrong number of arguments 6.ms#L1044-L1071 that is something that the compiler check but the interpreter not. This can probably be solved with anif
or something.Anyway, perhaps it's better to just disable the test of the interpreted version and claim victory.
About the bootfiles, I'm not sure if this is the official or the best method to build them. (I also disable the osx builds for the test.) Perhaps @samth can take a look at the tricks to build this in travis-ci.
Each build+test take 6 minutes more than the usual test in Chez Scheme. It would be nice in the future to put the compatibility layer in a separate package (no a separate repository) so the build on top of an existing racket-classic is easier.