Skip to content

Instantly share code, notes, and snippets.

@skids
Created April 2, 2015 03:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save skids/dbe151cb35a4de8c4b9a to your computer and use it in GitHub Desktop.
Save skids/dbe151cb35a4de8c4b9a to your computer and use it in GitHub Desktop.
Easy patch to tell us which module is asking for a stale CORE.setting:
bri@atlas:~/git/rakudobrew/git_reference/MoarVM$ perl6 -MURI -e '1;'
===SORRY!===
Missing or wrong version of dependency 'src/gen/m-CORE.setting' (from 'lib/IETF/RFC_Grammar/URI.pm')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
\o/
OK, well it wasn't so easy for me not knowing any guts, but I'm surprised nobody has done it yet.
Of course now with S11 we also may need a way to get stale code out of the compuintrepo db, right?
I assume it is safe to follow root.sc without a NULL check because other code does it.
Not spectested:
diff --git a/src/6model/serialization.c b/src/6model/serialization.c
index db25b94..73d99f7 100644
--- a/src/6model/serialization.c
+++ b/src/6model/serialization.c
@@ -1812,8 +1812,9 @@ static void resolve_dependencies(MVMThreadContext *tc, MVMSerializationReader *r
MVMString *desc = read_string_from_heap(tc, reader, read_int32(table_pos, 4));
if (!desc) desc = handle;
fail_deserialize(tc, reader,
- "Missing or wrong version of dependency '%s'",
- MVM_string_ascii_encode(tc, desc, NULL));
+ "Missing or wrong version of dependency '%s' (from '%s')",
+ MVM_string_ascii_encode(tc, desc, NULL),
+ MVM_string_ascii_encode(tc, reader->root.sc->body->description, NULL));
}
reader->root.dependent_scs[i] = sc;
table_pos += 8;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment