🦋 Welcome to the IRC channel of the core developers of the Raku Programming Language (raku.org #rakulang). This channel is logged for the purpose of history keeping about its development | evalbot usage: 'm: say 3;' or /msg camelia m: ... | log inspection situation still under development | For MoarVM see #moarvm
Set by lizmat on 22 May 2021.
Geth rakudo: hythm7++ created pull request #4831:
Move CompUnit::Repository::Staging into core
02:41
lizmat Files=1351, Tests=117115, 299 wallclock secs (35.29 usr 10.15 sys + 4110.57 cusr 354.02 csys = 4510.03 CPU) 09:29
Geth rakudo: 430214ba58 | (Elizabeth Mattijsen)++ | src/core.c/CompUnit/PrecompilationStore/File.pm6
Streamline file rename logic

  - don't use a named block for renaming logic, make a sub for that
  - don't use CATCH blocks
  - don't do anything special for Windows, just always try 10 times
  - throw Failure directly rather then depending on it being sunk
  - make sure Failures are disabled to prevent warnings on DESTROY
  - rename some variables to indicate their function
10:45
nine lizmat: why did you extend that Windows workaround to sane platforms? 10:57
lizmat because there is zero extra cost ?
instead of checking whether we're on Windows
we check if the rename worked, and be done with that
nine But there is no reason to try again on non-Windows 10:58
Geth rakudo: e82e114714 | (Elizabeth Mattijsen)++ | src/core.c/CompUnit/PrecompilationStore/File.pm6
Don't bother retrying if you're not on Windows
11:08
lizmat nine ^^ 11:10
lizmat am I reading this correctly: github.com/rakudo/rakudo/blob/mast...er.pm6#L44 11:39
looks like JVM doesn't support loading byte code from an IO::Handle ? 11:40
shouldn't calling this not die then on the JVM instead of just returning an empty CompUnit::Handle ?
nine It should. Just hasn't caused issues because we take the right path in the caller: github.com/rakudo/rakudo/blob/mast...ry.pm6#L86 11:51
A more elegant solution would be to have load-precompilation-file on JVM just slurp the rest of the file handle and pass the buffer to loadbytecodebuffer 11:52
Geth rakudo: 530e178484 | (Elizabeth Mattijsen)++ | 2 files
Streamline CompUnit::Loader

  - more precise typing
  - better named variables
  - handle load-precompilation-file(IO::Handle:D) on the JVM backend
  - remove special JVM casing in CompUnit::Precompilation::Repository
   as it is no longer needed
12:28
lizmat so, the "Need to re-check dependencies" for modules in the "core" repo, for NativeCall costs about 50 msecs (out of total of 270 msecs needed to load NativeCall) 20:10