{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":58960504,"defaultBranch":"master","name":"jruby","ownerLogin":"headius","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2016-05-16T19:23:15.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/10135?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1717450290.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"2ebde207cbd1ddf3200b623f3eef7768d4bea566","ref":"refs/heads/ir_printing_enhancements","pushedAt":"2024-06-03T21:31:30.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Ensure context is set before printing\n\nPrinting may end up calling back out to Ruby, which may re-\nencounter this method or block. If the context has not been set,\nit will attempt to print again which will recurse forever.","shortMessageHtmlLink":"Ensure context is set before printing"}},{"before":null,"after":"db8332fb0a776e4d57f43d90ec720bd1ce84b62b","ref":"refs/heads/less_objectspace","pushedAt":"2024-06-03T15:01:27.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Add a static version to avoid virtual dispatch","shortMessageHtmlLink":"Add a static version to avoid virtual dispatch"}},{"before":"8ab3c8fa5e3a3335286ffb8ecde6fcba6bc59aaf","after":null,"ref":"refs/heads/literal_numeric_arrays","pushedAt":"2024-05-31T18:27:09.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"}},{"before":"6b46947b7b2353ac87b81de8204ca25270a8b4c7","after":"8ab3c8fa5e3a3335286ffb8ecde6fcba6bc59aaf","ref":"refs/heads/literal_numeric_arrays","pushedAt":"2024-05-31T17:35:19.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Optimize literal fixnum and float arrays\n\nThis change detects when a literal array contains only fixnums or\nfloats and uses indy to embed those values in a call site, greatly\nreducing the bytecode size for constructing the array. Arrays that\nare too large will not fit into the encoded String and prevent\ncompilation, but they would not likely have fit into bytecode\nlimits with the old logic anyway.\n\nA benchmark is included.","shortMessageHtmlLink":"Optimize literal fixnum and float arrays"}},{"before":"02efdb2b2a8a2d9b0a3f0f8baa1d17ad68df0217","after":"6b46947b7b2353ac87b81de8204ca25270a8b4c7","ref":"refs/heads/literal_numeric_arrays","pushedAt":"2024-05-31T17:21:34.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Optimize literal fixnum and float arrays\n\nThis change detects when a literal array contains only fixnums or\nfloats and uses indy to embed those values in a call site, greatly\nreducing the bytecode size for constructing the array. Arrays that\nare too large will not fit into the encoded String and prevent\ncompilation, but they would not likely have fit into bytecode\nlimits with the old logic anyway.\n\nA benchmark is included.","shortMessageHtmlLink":"Optimize literal fixnum and float arrays"}},{"before":"278bf62cbd66d36b872a70b991e48d2aeca1dee8","after":"f4328227adb3707d849c2642f913e2e31f592b30","ref":"refs/heads/ivar_shaping","pushedAt":"2024-05-29T21:21:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Start moving shape reference into shaped objects\n\nIn order to evolve the shape of objects as more instance variables\nare discovered, we need to be able to access multiple different\nshaped instances with their own layouts. Previously, only one\nshape could be associated with a given class, based on a static\ninspection of all instance variable accesses in the class's\nhierarchy. In order to keep stale-shaped objects functional, this\ncommit adds a shape reference to all shaped RubyObject subtypes.\nWith this we can allocate a first object using no instance vars\n(falling back on the default varTable layout) and as instance vars\nare encountered modify allocation to create wider object shapes.\n\nThe step here simply adds the shape reference to all shaped\nobjects; evolving that shape and updating the allocator will come\nin future commits.","shortMessageHtmlLink":"Start moving shape reference into shaped objects"}},{"before":"3700d14a3c0520f3a95c2724ab966b527506a32a","after":"02efdb2b2a8a2d9b0a3f0f8baa1d17ad68df0217","ref":"refs/heads/literal_numeric_arrays","pushedAt":"2024-05-29T21:19:52.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Optimize literal fixnum and float arrays\n\nThis change detects when a literal array contains only fixnums or\nfloats and uses indy to embed those values in a call site, greatly\nreducing the bytecode size for constructing the array. Arrays that\nare too large will not fit into the encoded String and prevent\ncompilation, but they would not likely have fit into bytecode\nlimits with the old logic anyway.\n\nA benchmark is included.","shortMessageHtmlLink":"Optimize literal fixnum and float arrays"}},{"before":"848905015a6da6056aad99d60597227afbe00dc6","after":null,"ref":"refs/heads/lastline_call_site","pushedAt":"2024-05-29T21:18:46.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"}},{"before":"feb5f4c8513aef54deb9382dc6ed30b654d98ebe","after":"07d82666bf4ace2a8c765b396b6c5889fa52d1dc","ref":"refs/heads/no_eager_constants","pushedAt":"2024-05-29T21:12:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Flip this to false to disable eager constants\n\nSee jruby/jruby#8208","shortMessageHtmlLink":"Flip this to false to disable eager constants"}},{"before":"5cccc138e3dd11a05e9824cedaba14e5322b5352","after":"c007c741a6b4fb46af5afebbff7d9a206cfcce13","ref":"refs/heads/default_indy","pushedAt":"2024-05-29T21:11:54.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Enable invokedynamic by default\n\nThere will be some impact to startup and warmup time initially but\nthis is the future of JRuby.","shortMessageHtmlLink":"Enable invokedynamic by default"}},{"before":"da0c4df6142d18830643af2b7d671168f79fc85e","after":null,"ref":"refs/heads/default_visibility","pushedAt":"2024-05-29T21:03:23.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"}},{"before":"9317c75a68a31beeeee91bd197597ba351b0d948","after":"da0c4df6142d18830643af2b7d671168f79fc85e","ref":"refs/heads/default_visibility","pushedAt":"2024-05-29T20:30:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Add test for new DEFAULT visibility","shortMessageHtmlLink":"Add test for new DEFAULT visibility"}},{"before":"890f675d7c358f96112bbb439656dcb5fb53b703","after":"5cccc138e3dd11a05e9824cedaba14e5322b5352","ref":"refs/heads/default_indy","pushedAt":"2024-05-29T19:58:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Enable invokedynamic by default\n\nThere will be some impact to startup and warmup time initially but\nthis is the future of JRuby.","shortMessageHtmlLink":"Enable invokedynamic by default"}},{"before":null,"after":"890f675d7c358f96112bbb439656dcb5fb53b703","ref":"refs/heads/default_indy","pushedAt":"2024-05-29T19:54:31.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Enable invokedynamic by default\n\nThere will be some impact to startup and warmup time initially but\nthis is the future of JRuby.","shortMessageHtmlLink":"Enable invokedynamic by default"}},{"before":"ee3ac196d567c0d64d9b546c5a780e648dd8b027","after":"848905015a6da6056aad99d60597227afbe00dc6","ref":"refs/heads/lastline_call_site","pushedAt":"2024-05-29T19:47:49.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Add benchmark for IO#print\n\nThis tests the overhead of a method that calls print, given the\noptimization in jruby/jruby#8249.","shortMessageHtmlLink":"Add benchmark for IO#print"}},{"before":"4e38541fe63f84293e89b9f053acae4f16ef71b2","after":null,"ref":"refs/heads/better_debug_jit","pushedAt":"2024-05-29T18:43:18.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"}},{"before":"b236433dd861854edf0d4db6a2b6d9bb752e0db6","after":null,"ref":"refs/heads/fast_marshal","pushedAt":"2024-05-28T20:16:52.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"}},{"before":"638053e9614f284f733c1e3c8f08ce245f97f779","after":"4e38541fe63f84293e89b9f053acae4f16ef71b2","ref":"refs/heads/better_debug_jit","pushedAt":"2024-05-28T18:57:14.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Document these better","shortMessageHtmlLink":"Document these better"}},{"before":"982fb2e5d7e9f1515a18e4c2edb1cab4995ed5ab","after":"b236433dd861854edf0d4db6a2b6d9bb752e0db6","ref":"refs/heads/fast_marshal","pushedAt":"2024-05-28T18:28:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Add Marshal#load benchmark\n\n[skip ci]","shortMessageHtmlLink":"Add Marshal#load benchmark"}},{"before":"0259e725fb030c3b2adf0b2388f502736dfec7c3","after":"982fb2e5d7e9f1515a18e4c2edb1cab4995ed5ab","ref":"refs/heads/fast_marshal","pushedAt":"2024-05-28T18:08:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Capture shared variable iter state immediately\n\nIf not captured immediately, contained objects will be dumped and\nclear this state, breaking the variable count just acquired.","shortMessageHtmlLink":"Capture shared variable iter state immediately"}},{"before":"be85c7ddea94e743d687a3790c462cbc6bc81881","after":"0259e725fb030c3b2adf0b2388f502736dfec7c3","ref":"refs/heads/fast_marshal","pushedAt":"2024-05-28T16:40:18.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Actually use the cached Symbol","shortMessageHtmlLink":"Actually use the cached Symbol"}},{"before":"9121f72296bb926452602cdcdb9f1245e5a494f6","after":null,"ref":"refs/heads/optz_regression_fixes","pushedAt":"2024-05-28T15:40:33.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"}},{"before":"7439af80c392d94bda007cdb153f3e0be152ca39","after":"be85c7ddea94e743d687a3790c462cbc6bc81881","ref":"refs/heads/fast_marshal","pushedAt":"2024-05-26T16:34:30.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Clean up imports","shortMessageHtmlLink":"Clean up imports"}},{"before":"e6c3482d67ab89590e23dd261491bb91b31454e3","after":"7439af80c392d94bda007cdb153f3e0be152ca39","ref":"refs/heads/fast_marshal","pushedAt":"2024-05-26T16:29:27.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Add Marshal.dump bench for common objects","shortMessageHtmlLink":"Add Marshal.dump bench for common objects"}},{"before":"9128d3a4688d3b17a14a69dd2d561fd79bad5d9b","after":"e6c3482d67ab89590e23dd261491bb91b31454e3","ref":"refs/heads/fast_marshal","pushedAt":"2024-05-26T16:02:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Add Marshal.dump bench for common objects","shortMessageHtmlLink":"Add Marshal.dump bench for common objects"}},{"before":"ca1a856b0bc8545f7b8d9c6b0049d30237b30358","after":"9128d3a4688d3b17a14a69dd2d561fd79bad5d9b","ref":"refs/heads/fast_marshal","pushedAt":"2024-05-26T14:45:14.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Arity-split Marshal.dump","shortMessageHtmlLink":"Arity-split Marshal.dump"}},{"before":"081887c4634d65a8ff2f763311eb1b62ef9793db","after":"ca1a856b0bc8545f7b8d9c6b0049d30237b30358","ref":"refs/heads/fast_marshal","pushedAt":"2024-05-26T14:06:50.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Store encoding symbols in SymbolTable\n\nThis is the first of many globally-used symbols to be added to the\nSymbolTable. This commit also moves creation of the SymbolTable to\njust after the creation of the Symbol class, so these global\nsymbols can be final references.","shortMessageHtmlLink":"Store encoding symbols in SymbolTable"}},{"before":"56c5d4e8105e7476258cf5c93408e4b596043e78","after":"081887c4634d65a8ff2f763311eb1b62ef9793db","ref":"refs/heads/fast_marshal","pushedAt":"2024-05-26T13:25:57.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Eliminate lambdas for variable counting\n\nTwo lambdas for dumping variables is two too many. This reduces it\nto one.","shortMessageHtmlLink":"Eliminate lambdas for variable counting"}},{"before":"f5007a2cda0f246f827c706d86f682c7b695babc","after":"56c5d4e8105e7476258cf5c93408e4b596043e78","ref":"refs/heads/fast_marshal","pushedAt":"2024-05-26T12:35:43.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Cache the class path Symbol on the class\n\nAdditional improvements here:\n\n* rubyName no longer reverses the parents list before iterating.\n* Factored out common path string-building logic.\n* Smaller initial parents list (more than 5 parents is very rare).","shortMessageHtmlLink":"Cache the class path Symbol on the class"}},{"before":null,"after":"f5007a2cda0f246f827c706d86f682c7b695babc","ref":"refs/heads/fast_marshal","pushedAt":"2024-05-26T10:56:34.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"headius","name":"Charles Oliver Nutter","path":"/headius","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10135?s=80&v=4"},"commit":{"message":"Eliminate Variable use and do some cleanup\n\nThis eliminates all remaining usage of the Variable collection\nfrom RubyBasicObject.getMarshalVariables. Includes some additional\ncleanup and refactored logic.","shortMessageHtmlLink":"Eliminate Variable use and do some cleanup"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEW2R0YgA","startCursor":null,"endCursor":null}},"title":"Activity ยท headius/jruby"}