rodrigo.ribeiro
2022-2-8 18:38:12

Hello! I’m writing a library in racket and I’ve got a strange error message on building the library:


rodrigo.ribeiro
2022-2-8 18:38:14

write: cannot marshal value that is embedded in compiled code


rodrigo.ribeiro
2022-2-8 18:38:39

I’ve googled a bit about this error message but it provides me no clue on how to solve it.


rodrigo.ribeiro
2022-2-8 18:38:55

This error happens only when building the library on github CI service


rodrigo.ribeiro
2022-2-8 18:39:15

it does not happen when running the test cases on my desktop machine


rodrigo.ribeiro
2022-2-8 18:39:26

any pointers would be really helpful.


soegaard2
2022-2-8 18:40:48

soegaard2
2022-2-8 18:41:19

It might give a clue wrt what to look for.


soegaard2
2022-2-8 18:42:10

It is odd, that you don’t get an error on both machines - unless the issue is that you are generating some value in your own machine that can’t later be read by the instance on the CI service.


rodrigo.ribeiro
2022-2-8 18:42:33

Hi!


rodrigo.ribeiro
2022-2-8 18:42:41

Yeah, that’s weird.


rodrigo.ribeiro
2022-2-8 18:42:50

The library is a simple language


rodrigo.ribeiro
2022-2-8 18:43:07

and I manage to get some tests running on the interpreter


rodrigo.ribeiro
2022-2-8 18:43:33

but whenever I push the code on github, it runs the CI service and returns the error message


soegaard2
2022-2-8 18:44:12

It’s an uncommon error, so it hard to guess what is wrong.

By “interpreter” do you mean your own?


rodrigo.ribeiro
2022-2-8 18:44:37

No, in racket interpreter


rodrigo.ribeiro
2022-2-8 18:44:46

the code runs just fine


rodrigo.ribeiro
2022-2-8 18:45:20

I’ll try to add the prefab thing to the datatypes and see what happens


soegaard2
2022-2-8 18:52:30

Same version of Racket on your machine and the CI service?