{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":10411154,"defaultBranch":"main","name":"MoarVM","ownerLogin":"MoarVM","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2013-05-31T19:02:30.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/4582420?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1717084057.0","currentOid":""},"activityList":{"items":[{"before":"d67da80f392eff0c262491c05520bbc3cdc93eb9","after":"a7b452e530b985e66ce208497cf3e16dae228bb4","ref":"refs/heads/main","pushedAt":"2024-05-30T15:53:55.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"jdv","name":"Justin DeVuyst","path":"/jdv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47612?s=80&v=4"},"commit":{"message":"Merge pull request #1811 from MoarVM/2024.050\n\nUpdate changelog and version","shortMessageHtmlLink":"Merge pull request #1811 from MoarVM/2024.050"}},{"before":null,"after":"80b65161e176984f1eab770e30323c7e372f24d0","ref":"refs/heads/2024.050","pushedAt":"2024-05-30T15:47:13.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jdv","name":"Justin DeVuyst","path":"/jdv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47612?s=80&v=4"},"commit":{"message":"Update changelog and version","shortMessageHtmlLink":"Update changelog and version"}},{"before":"f8e7173226ce49f192fcd39f8dce1f63e1737f22","after":"d67da80f392eff0c262491c05520bbc3cdc93eb9","ref":"refs/heads/main","pushedAt":"2024-05-28T15:38:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lizmat","name":"Elizabeth Mattijsen","path":"/lizmat","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2229339?s=80&v=4"},"commit":{"message":"Revert \"Don't lose return value with LEAVE phasers\"\n\nThis reverts commit f8e7173226ce49f192fcd39f8dce1f63e1737f22.\n\nWay too close to the release, and just after a blin run. Sorry.\nWill re-apply after the 2024.05 release","shortMessageHtmlLink":"Revert \"Don't lose return value with LEAVE phasers\""}},{"before":"f1173cb26a19ecee14c0577931cd1ab8a3bbe0bd","after":"f8e7173226ce49f192fcd39f8dce1f63e1737f22","ref":"refs/heads/main","pushedAt":"2024-05-28T15:35:06.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"lizmat","name":"Elizabeth Mattijsen","path":"/lizmat","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2229339?s=80&v=4"},"commit":{"message":"Don't lose return value with LEAVE phasers\n\nWhen using &return an exception is thrown and the return value saved in\r\n`tc->last_payload`. LEAVE phasers interupt the stack unwind and call the\r\nLEAVE code block. Code in there can and often does make use of\r\n`tc->last_payload` via &return or other means. This overwrites the original\r\nvalue which is then lost. Fix by saving / restoring the original value in\r\nthe special return stack frame. That frame is added to the call stack\r\nbefore calling the LEAVE code block and the value can be restored once we\r\nare back to that stack frame.","shortMessageHtmlLink":"Don't lose return value with LEAVE phasers"}},{"before":"fe2080ac38da72482408898a816dc9cb1ad5ee0a","after":"f1173cb26a19ecee14c0577931cd1ab8a3bbe0bd","ref":"refs/heads/main","pushedAt":"2024-05-26T13:02:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"lizmat","name":"Elizabeth Mattijsen","path":"/lizmat","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2229339?s=80&v=4"},"commit":{"message":"Attach the spawn_result when it contains an error code\n\nPreviously this was only accessible via parsing the provided\r\nerror message instead. The error code itself is useful for\r\nsetting the exit code of the (failed) invocation attempt.\r\n\r\nPart of fixing R#1590.","shortMessageHtmlLink":"Attach the spawn_result when it contains an error code"}},{"before":"c9dd4dd96423a485743ac814b3c8b294449bbc5e","after":"fe2080ac38da72482408898a816dc9cb1ad5ee0a","ref":"refs/heads/main","pushedAt":"2024-05-20T15:22:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"lizmat","name":"Elizabeth Mattijsen","path":"/lizmat","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2229339?s=80&v=4"},"commit":{"message":"Provide some mechanisms for introspecting file mode\n\nIn order to avoid adding yet-another member variable\r\nto IO::Handle, we instead provide some new syscalls\r\nfor inquiring about the mode of the underlying\r\nBOOTIO object.\r\n\r\nDue to ambiguity created by O_RONLY being 0, we\r\nneed to set a second flag variable that only cares about\r\nthe r/w/rw distinction. We can do this directly in the\r\nexisting flag determination by adding a new parameter\r\nand storing it at the right location.\r\n\r\nWe then expose our own values for simplified open file mode\r\n(ro = 1, wo = 2, rw = 3) through a single syscall and let the\r\nHLL check against it with new constants representing\r\nthe above mapping.","shortMessageHtmlLink":"Provide some mechanisms for introspecting file mode"}},{"before":"dbdfb3999ba759eee1ff58e66a4b7bdb7e823dd2","after":"c9dd4dd96423a485743ac814b3c8b294449bbc5e","ref":"refs/heads/main","pushedAt":"2024-05-18T14:13:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MasterDuke17","name":null,"path":"/MasterDuke17","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10255441?s=80&v=4"},"commit":{"message":"Silence incorrect GCC warning\n\nThe three branches of the `if/else if` correspond to the three `case`s\nthat can enter this block, so the variable will always be initialized\nwhen used.","shortMessageHtmlLink":"Silence incorrect GCC warning"}},{"before":"c1eedd502b411ed586a176a809f6c6d4ec33509c","after":"dbdfb3999ba759eee1ff58e66a4b7bdb7e823dd2","ref":"refs/heads/main","pushedAt":"2024-05-18T08:55:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"lizmat","name":"Elizabeth Mattijsen","path":"/lizmat","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2229339?s=80&v=4"},"commit":{"message":"Cleanup variables in bigint ops error cases\n\nIn a bunch of error cases of bigint ops we weren't always cleaning up\r\nall the variables. These were noticed when investigating\r\nhttps://github.com/MoarVM/MoarVM/issues/1804, but I don't think they are\r\nthe actual cause.","shortMessageHtmlLink":"Cleanup variables in bigint ops error cases"}},{"before":"62e64677ed28ef2996572acb000c423582f7d78b","after":"c1eedd502b411ed586a176a809f6c6d4ec33509c","ref":"refs/heads/main","pushedAt":"2024-05-02T22:53:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MasterDuke17","name":null,"path":"/MasterDuke17","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10255441?s=80&v=4"},"commit":{"message":"Oops, forgot to make coerce_u_s use exact length","shortMessageHtmlLink":"Oops, forgot to make coerce_u_s use exact length"}},{"before":"8ccb87755feae774175fc2706487d03e6c39ee8f","after":"62e64677ed28ef2996572acb000c423582f7d78b","ref":"refs/heads/main","pushedAt":"2024-05-02T10:15:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"lizmat","name":"Elizabeth Mattijsen","path":"/lizmat","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2229339?s=80&v=4"},"commit":{"message":"Just malloc instead of stack+malloc+memcpy when coercing int to string\n\nInstead of itoa() writing into a stack-allocated buffer of the max\r\npossible size and then MVM_malloc()ing a new buffer of the actual size\r\nand memcpy()ing from the stack buffer into the new buffer, alway\r\nMVM_malloc() a buffer of the max size and just use that. This means we\r\ndon't use the stack as much and don't have to memcpy(). However, we are\r\nnow probably wasting some memory with every coerce that doesn't hit the\r\ncache, since most coercions likely result in a smaller string than the\r\nmax possible size. One obvious solution would be to MVM_realloc() down\r\nto the actual size, but that's actually slower than the original code.\r\nThis does mean that unmanaged_size() will slightly underreport for the\r\nMVMStrings resulting from these coercions, but maybe the difference will\r\nbe small enough not to really matter?\r\n\r\nMy test case, `MVM_SPESH_BLOCKING=1 nqp-m -e 'my str $s; my int $i := 0;\r\nmy $n := nqp::time; while $i++ < 10_000_000 { $s := $i };\r\nsay(nqp::div_n(nqp::time - $n, 1000000000e0)); say($s)'` decreased from\r\n~0.30s to ~0.27s and the number of instructions reported by callgrind\r\n(with only 1_000_000 iterations and not tracking the time) decreased\r\nfrom ~642.2m to ~608.7m.\r\n\r\nI logged all coercions that didn't hit the cache during the Rakudo build\r\nand of the 8.2m, 7.8m were for length 13 (so wasting 7 bytes), and the\r\nrest were no more than 10 (so wasting 10-19 bytes).\r\n\r\nAllocate exact space for int->str conversion\r\n\r\nAdd a Windows version of __builtin_clzll from LLVM","shortMessageHtmlLink":"Just malloc instead of stack+malloc+memcpy when coercing int to string"}},{"before":"a40b9d7725d4c539ee318b1027504134cc2efdd0","after":"8ccb87755feae774175fc2706487d03e6c39ee8f","ref":"refs/heads/main","pushedAt":"2024-04-28T15:55:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lizmat","name":"Elizabeth Mattijsen","path":"/lizmat","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2229339?s=80&v=4"},"commit":{"message":"Update bytecode documentation\n\nWith the experiences obtained while working on the MoarVM::Bytecode\nmodule","shortMessageHtmlLink":"Update bytecode documentation"}},{"before":"47f518af252a2ddb8fd5f9eb5938a2646480d63e","after":"a40b9d7725d4c539ee318b1027504134cc2efdd0","ref":"refs/heads/main","pushedAt":"2024-04-25T17:57:38.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"jdv","name":"Justin DeVuyst","path":"/jdv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47612?s=80&v=4"},"commit":{"message":"Merge pull request #1801 from MoarVM/2024.040\n\nUpdate changelog and version","shortMessageHtmlLink":"Merge pull request #1801 from MoarVM/2024.040"}},{"before":null,"after":"f0301e6a76fb411d397c8e5de241988915888dd9","ref":"refs/heads/2024.040","pushedAt":"2024-04-25T17:45:52.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jdv","name":"Justin DeVuyst","path":"/jdv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47612?s=80&v=4"},"commit":{"message":"Update changelog and version","shortMessageHtmlLink":"Update changelog and version"}},{"before":"d5dafa9b47d56489e9a2d67b0a24f8ded06c0ff7","after":"47f518af252a2ddb8fd5f9eb5938a2646480d63e","ref":"refs/heads/main","pushedAt":"2024-04-21T16:32:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"lizmat","name":"Elizabeth Mattijsen","path":"/lizmat","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2229339?s=80&v=4"},"commit":{"message":"(twoway_memmem_uint32) Fix memcmp call\n\nThis resolves Rakudo Issue #5550 (Simple literal-only regex fails).\r\n\r\nApparently the previous behavior was Good Enough for 6 years of\r\nregexing, but it contained a significant bug: `memcmp` was being\r\ngiven 32-bit byte strings but was instructed only to compare the\r\nfirst `ms+1` bytes.\r\n\r\nSurprisingly, it seems that the overall algorithm still does the\r\nright thing for the vast majority of cases. However, when the\r\nhaystack / needle combination is of a certain patternality, we\r\nget an obviously wrong failure.\r\n\r\nHaystack = Xabddcabaacab\r\nNeedle = abaacab\r\n\r\nNote that the characters don't matter, just the ordering and\r\ncombination.\r\n\r\nCo-authored-by: ab5tract ","shortMessageHtmlLink":"(twoway_memmem_uint32) Fix memcmp call"}},{"before":"73ec511c68667e681015cf6c432aff6a6d67afa2","after":"d5dafa9b47d56489e9a2d67b0a24f8ded06c0ff7","ref":"refs/heads/main","pushedAt":"2024-04-14T09:11:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"niner","name":null,"path":"/niner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/73249?s=80&v=4"},"commit":{"message":"Use atomic operations for on SerializationReader's working flag\n\nThis flag is read from different threads than it is written to. This\nmeans that when using a plain integer, a thread could read an outdated\nvalue from a CPU cache leading to it believing that no deserialization\nis running when it actually is. This in turn could cause us to read from\nhalf-deserialized objects.\n\nlizmat++ for all the heavy debugging work on this","shortMessageHtmlLink":"Use atomic operations for on SerializationReader's working flag"}},{"before":"ebcbee73546b2574b24bd00d1dd8fb95b491dc05","after":"73ec511c68667e681015cf6c432aff6a6d67afa2","ref":"refs/heads/main","pushedAt":"2024-04-13T15:58:01.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lizmat","name":"Elizabeth Mattijsen","path":"/lizmat","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2229339?s=80&v=4"},"commit":{"message":"Revert \"Don't allow lazy deserialization\"\n\nThis reverts commit ebcbee73546b2574b24bd00d1dd8fb95b491dc05.\n\nEager serialization appears to have bitrotted","shortMessageHtmlLink":"Revert \"Don't allow lazy deserialization\""}},{"before":"f2220d93d976c6ff915761c01f006012c410b874","after":"ebcbee73546b2574b24bd00d1dd8fb95b491dc05","ref":"refs/heads/main","pushedAt":"2024-04-13T12:56:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lizmat","name":"Elizabeth Mattijsen","path":"/lizmat","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2229339?s=80&v=4"},"commit":{"message":"Don't allow lazy deserialization","shortMessageHtmlLink":"Don't allow lazy deserialization"}},{"before":"5b48ae1e53cde03275dd0c4ec9aaf4d7083f50f2","after":"f2220d93d976c6ff915761c01f006012c410b874","ref":"refs/heads/main","pushedAt":"2024-04-06T00:26:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MasterDuke17","name":null,"path":"/MasterDuke17","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10255441?s=80&v=4"},"commit":{"message":"Increase the size of the int-to-str cache to 65\n\nThis means we will cache 64, which was coerced ~42k times during a\nRakudo build. A micro-benchmark (`my int $i = 64; my $s; $s = ~$i for\n^10_000_000; say now - INIT now; say $s`) decreased from ~0.50s to\n~0.22s.","shortMessageHtmlLink":"Increase the size of the int-to-str cache to 65"}},{"before":"69a06919cbffdd93f58b7270601e32b31941e780","after":"5b48ae1e53cde03275dd0c4ec9aaf4d7083f50f2","ref":"refs/heads/main","pushedAt":"2024-04-06T00:16:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MasterDuke17","name":null,"path":"/MasterDuke17","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10255441?s=80&v=4"},"commit":{"message":"Remove some unused code\n\nLooks like it was missed in 6941cada41a2ae2f32eb6ae179d41053468304f1.","shortMessageHtmlLink":"Remove some unused code"}},{"before":"2a60bd07bd3b90d6d5c5d30311bdb5cb2f0f2a59","after":"69a06919cbffdd93f58b7270601e32b31941e780","ref":"refs/heads/main","pushedAt":"2024-03-28T18:02:21.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"jdv","name":"Justin DeVuyst","path":"/jdv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47612?s=80&v=4"},"commit":{"message":"Merge pull request #1797 from MoarVM/2024.030\n\nUpdate changelog and version","shortMessageHtmlLink":"Merge pull request #1797 from MoarVM/2024.030"}},{"before":null,"after":"f45b5b98157c3ebb7aeecd15f8716aac57b3a77d","ref":"refs/heads/2024.030","pushedAt":"2024-03-28T17:52:09.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jdv","name":"Justin DeVuyst","path":"/jdv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47612?s=80&v=4"},"commit":{"message":"Update changelog and version","shortMessageHtmlLink":"Update changelog and version"}},{"before":"4ea71939095e86fb43a81637a76c19788ae14082","after":"2a60bd07bd3b90d6d5c5d30311bdb5cb2f0f2a59","ref":"refs/heads/main","pushedAt":"2024-03-16T09:39:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"lizmat","name":"Elizabeth Mattijsen","path":"/lizmat","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2229339?s=80&v=4"},"commit":{"message":"build_release.yml: Add initial build workflow (#1796)\n\nAdd a GitHub release build workflow to assure MoarVM is successfully building:\r\n- on all GitHub runners (ubuntu, macos, windows)\r\n- based on the actual pushed \"git tag\"\r\n\r\nCo-authored-by: AntonOks ","shortMessageHtmlLink":"build_release.yml: Add initial build workflow (#1796)"}},{"before":"8320c9f4b219971f98667b497614f06120c67781","after":"4ea71939095e86fb43a81637a76c19788ae14082","ref":"refs/heads/main","pushedAt":"2024-02-29T21:06:59.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"jdv","name":"Justin DeVuyst","path":"/jdv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47612?s=80&v=4"},"commit":{"message":"Merge pull request #1793 from MoarVM/2024.020\n\nUpdate changelog and version","shortMessageHtmlLink":"Merge pull request #1793 from MoarVM/2024.020"}},{"before":null,"after":"3e0ecde6ddb311b2d549e4aad520b1875f076938","ref":"refs/heads/2024.020","pushedAt":"2024-02-29T21:01:13.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jdv","name":"Justin DeVuyst","path":"/jdv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47612?s=80&v=4"},"commit":{"message":"Update changelog and version","shortMessageHtmlLink":"Update changelog and version"}},{"before":"edbd26473128c7c7275e5645ccb1cfab22326287","after":"8320c9f4b219971f98667b497614f06120c67781","ref":"refs/heads/main","pushedAt":"2024-02-27T21:05:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"lizmat","name":"Elizabeth Mattijsen","path":"/lizmat","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2229339?s=80&v=4"},"commit":{"message":"Provide hint for why Rakudo tried to convert from Int to int, when it cannot. (#1792)","shortMessageHtmlLink":"Provide hint for why Rakudo tried to convert from Int to int, when it…"}},{"before":"504a4d7b86c4d571feda414a8f8598ccba7b0416","after":"edbd26473128c7c7275e5645ccb1cfab22326287","ref":"refs/heads/main","pushedAt":"2024-02-17T20:26:32.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"MasterDuke17","name":null,"path":"/MasterDuke17","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10255441?s=80&v=4"},"commit":{"message":"Merge pull request #1791 from dogbert17/Update-libuv-2-v1.48.0","shortMessageHtmlLink":"Merge pull request #1791 from dogbert17/Update-libuv-2-v1.48.0"}},{"before":"a1a18e9842464fdc17ae85e9494fb75a002c496c","after":"504a4d7b86c4d571feda414a8f8598ccba7b0416","ref":"refs/heads/main","pushedAt":"2024-02-12T11:55:03.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"MasterDuke17","name":null,"path":"/MasterDuke17","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10255441?s=80&v=4"},"commit":{"message":"Merge pull request #1790 from MasterDuke17/slightly_optimize_creating_backtraces\n\nSlightly optimize creating backtraces","shortMessageHtmlLink":"Merge pull request #1790 from MasterDuke17/slightly_optimize_creating…"}},{"before":"7c58f389d688ac32f523db27cee04767d949f6e5","after":"a1a18e9842464fdc17ae85e9494fb75a002c496c","ref":"refs/heads/main","pushedAt":"2024-02-12T09:05:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"niner","name":null,"path":"/niner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/73249?s=80&v=4"},"commit":{"message":"Fix uninitialized is_unsigned flag in P6num\n\nA num without explicit size had an uninitialized is_unsigned flag\ncausing at least flapping tests in NQP.","shortMessageHtmlLink":"Fix uninitialized is_unsigned flag in P6num"}},{"before":"c3fea4f5820cdc3f8d0014a12f236cc83313137d","after":"7c58f389d688ac32f523db27cee04767d949f6e5","ref":"refs/heads/main","pushedAt":"2024-01-26T19:27:51.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"jdv","name":"Justin DeVuyst","path":"/jdv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47612?s=80&v=4"},"commit":{"message":"Merge pull request #1787 from MoarVM/2024.010\n\nUpdate changelog and version","shortMessageHtmlLink":"Merge pull request #1787 from MoarVM/2024.010"}},{"before":null,"after":"a7a2916b50886f954158de3cbbc28747d2183de4","ref":"refs/heads/2024.010","pushedAt":"2024-01-26T19:21:33.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jdv","name":"Justin DeVuyst","path":"/jdv","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47612?s=80&v=4"},"commit":{"message":"Update changelog and version","shortMessageHtmlLink":"Update changelog and version"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEWDGQvgA","startCursor":null,"endCursor":null}},"title":"Activity · MoarVM/MoarVM"}