{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":9119875,"defaultBranch":"master","name":"parser","ownerLogin":"whitequark","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2013-03-30T18:14:41.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/54771?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1714157790.0","currentOid":""},"activityList":{"items":[{"before":"a92352025d7dd8807d8e466c5fa13c51d609b025","after":"3e260d2e37bcb3de8705489d1c2799c26c7a2215","ref":"refs/heads/master","pushedAt":"2024-04-26T18:56:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"31faa0aff60308647f2d81fef75bcd79414fe966","after":"a92352025d7dd8807d8e466c5fa13c51d609b025","ref":"refs/heads/master","pushedAt":"2024-04-26T18:56:29.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"8af86b0e52bdc2f0c1276725b16fdf02b698a25c","after":"31faa0aff60308647f2d81fef75bcd79414fe966","ref":"refs/heads/master","pushedAt":"2024-04-26T18:54:38.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"* Bump parser branches to 3.0.7, 3.1.5, 3.2.4, 3.3.1 (#1011)","shortMessageHtmlLink":"* Bump parser branches to 3.0.7, 3.1.5, 3.2.4, 3.3.1 (#1011)"}},{"before":"570e06520b81a107948d10fadaea89bd612b9a8d","after":"8af86b0e52bdc2f0c1276725b16fdf02b698a25c","ref":"refs/heads/master","pushedAt":"2024-04-26T18:45:11.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"+ ruby{33,34}.y: allow blocks inherit anonymous args. (#1010)\n\nThis commit tracks upstream commit ruby/ruby@596db9c.","shortMessageHtmlLink":"+ ruby{33,34}.y: allow blocks inherit anonymous args. (#1010)"}},{"before":"503cf61bbf8a93c6003e6d8744d230d3ad109914","after":"570e06520b81a107948d10fadaea89bd612b9a8d","ref":"refs/heads/master","pushedAt":"2024-04-21T22:38:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"`action.rb` doc fixes (#1008)\n\nFew sentence and formatting corrections","shortMessageHtmlLink":"action.rb doc fixes (#1008)"}},{"before":"76a704cc40d2d9b7df134bd4816e590803e3212b","after":"503cf61bbf8a93c6003e6d8744d230d3ad109914","ref":"refs/heads/master","pushedAt":"2024-03-17T17:17:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"* Use `require_relative` in the Parser codebase (#1003)\n\nIf there are many searches in the `$LOAD_PATH` in the user environment,\r\nrequire will perform unnecessary searches that are not needed.\r\nIn contrast, `require_relative` is efficient because it uses a relative path.\r\n\r\nParser gem requires Ruby 2.0+, it is possible to use `require_relative`,\r\nwhich was introduced in Ruby 1.9.\r\nhttps://github.com/whitequark/parser/blob/v3.3.0.5/parser.gemspec#L27","shortMessageHtmlLink":"* Use require_relative in the Parser codebase (#1003)"}},{"before":"b920c87872641a8be7c532d377964aab8f107683","after":"76a704cc40d2d9b7df134bd4816e590803e3212b","ref":"refs/heads/master","pushedAt":"2024-03-16T18:36:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Use `AST::Processor::Mixin` instead of deprecated `AST::Processor` (#1000)\n\nThis PR uses `AST::Processor::Mixin` instead of deprecated `AST::Processor` API:\r\n\r\n```ruby\r\n# This class includes {AST::Processor::Mixin}; however, it is\r\n# deprecated, since the module defines all of the behaviors that\r\n# the processor includes. Any new libraries should use\r\n# {AST::Processor::Mixin} instead of subclassing this.\r\n#\r\n# @deprecated Use {AST::Processor::Mixin} instead.\r\n```\r\n\r\nhttps://github.com/whitequark/ast/blob/v2.4.2/lib/ast/processor.rb#L2-L7\r\n\r\nThere is an imcompatibility where the inheritance no longer includes `AST::Processor`,\r\nbut the impact is expected to be negligible.","shortMessageHtmlLink":"Use AST::Processor::Mixin instead of deprecated AST::Processor (#…"}},{"before":"531974faea6e9b9079defe0c6ef9ed96f3f0979b","after":"b920c87872641a8be7c532d377964aab8f107683","ref":"refs/heads/master","pushedAt":"2024-03-10T16:07:29.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"+ Raise a more specific error when encountering an unknown magic comment encoding (#999)\n\nCloses #998","shortMessageHtmlLink":"+ Raise a more specific error when encountering an unknown magic comm…"}},{"before":"a1fd1169efb03e341be6cd34b6fb36ecc57e8df2","after":"531974faea6e9b9079defe0c6ef9ed96f3f0979b","ref":"refs/heads/master","pushedAt":"2024-01-21T22:24:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"0d73b1fefb077608a30b1f36800ed8b6bc239ae3","after":"a1fd1169efb03e341be6cd34b6fb36ecc57e8df2","ref":"refs/heads/master","pushedAt":"2024-01-21T22:23:45.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"7340bc3d1a056467612cdc95d306e32bcc2cce45","after":"0d73b1fefb077608a30b1f36800ed8b6bc239ae3","ref":"refs/heads/master","pushedAt":"2024-01-21T22:22:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"* Bump 3.2 branch to 3.2.3 (#993)\n\nRuby 3.2.3 has been released:\r\nhttps://www.ruby-lang.org/en/news/2024/01/18/ruby-3-2-3-released/\r\n\r\nBump 3.2 branch from 3.2.2 to 3.2.3\r\nhttps://github.com/ruby/ruby/compare/v3_2_2...v3_2_3\r\n\r\nThas PR is backport #926 to Ruby 3.2 branch.\r\ncf. https://github.com/ruby/ruby/commit/465eb7418d7ed91f5f0c75da77765c7f5ef8354f","shortMessageHtmlLink":"* Bump 3.2 branch to 3.2.3 (#993)"}},{"before":"a3f7dc542cbcc50afeaebe71398fc80c131faae4","after":"7340bc3d1a056467612cdc95d306e32bcc2cce45","ref":"refs/heads/master","pushedAt":"2024-01-15T22:30:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"a few fixes to fully integrate 3.4 grammar (#992)","shortMessageHtmlLink":"a few fixes to fully integrate 3.4 grammar (#992)"}},{"before":"eb6436d2bb0ae79d2714235043ea083850538e22","after":"a3f7dc542cbcc50afeaebe71398fc80c131faae4","ref":"refs/heads/master","pushedAt":"2024-01-15T16:40:31.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"3a03d711b6e8ae4de30041a7b9d5decfffa07930","after":"eb6436d2bb0ae79d2714235043ea083850538e22","ref":"refs/heads/master","pushedAt":"2024-01-15T15:14:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"+ Register a Ruby 3.4 parser (#991)\n\nTo avoid failing when running as part of ruby-head test builds.\r\n\r\nI did the same as previous years, just initialized 3.4 as a copy\r\nof 3.3.\r\n\r\nCo-authored-by: Jean Boussier ","shortMessageHtmlLink":"+ Register a Ruby 3.4 parser (#991)"}},{"before":"96e0cd9b0dba517f039bc714c0689fb0970c682e","after":"3a03d711b6e8ae4de30041a7b9d5decfffa07930","ref":"refs/heads/master","pushedAt":"2024-01-12T15:08:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"c61f13cb0a6c824207706f24a9534c142d8682dd","after":"96e0cd9b0dba517f039bc714c0689fb0970c682e","ref":"refs/heads/master","pushedAt":"2024-01-12T15:07:30.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"717b38c0e981052dc07206798dd4c165fb106421","after":"c61f13cb0a6c824207706f24a9534c142d8682dd","ref":"refs/heads/master","pushedAt":"2024-01-12T15:06:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"- lexer.rl: accept tabs before closing heredoc delimiter (#990)","shortMessageHtmlLink":"- lexer.rl: accept tabs before closing heredoc delimiter (#990)"}},{"before":"01c5032a7bf5660268734b6ea696b89ead26e89a","after":"717b38c0e981052dc07206798dd4c165fb106421","ref":"refs/heads/master","pushedAt":"2024-01-07T14:42:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"04a0632a1c02425c576e1ad9d718109ddd7642eb","after":"01c5032a7bf5660268734b6ea696b89ead26e89a","ref":"refs/heads/master","pushedAt":"2024-01-07T14:40:55.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"2620bc47cfdf90fdc0f7c3f70a1856656ded8b8a","after":"04a0632a1c02425c576e1ad9d718109ddd7642eb","ref":"refs/heads/master","pushedAt":"2024-01-07T14:39:57.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"- Fix an error when using heredoc with non-word delimiters (#987)\n\nI've found #986 regression in the following RuboCop CI matrix:\r\nhttps://github.com/rubocop/rubocop/actions/runs/7437077900/job/20234293932?pr=12598\r\n\r\nSo, #986 was not a sufficient fix. This PR fixes an error when using heredoc with non-word delimiters:\r\n\r\n```ruby\r\n<<~'+'\r\n foo\r\n+\r\n```\r\n\r\nThe following repro test have been newly added:\r\n\r\n```console\r\n$ bundle exec ruby -Itest test/test_lexer.rb\r\n(snip)\r\n\r\n 1) Error:\r\nTestLexer#test_heredoc_plus_character:\r\nRegexpError: target of repeat operator is not specified: /+\\z/\r\n /Users/koic/src/github.com/whitequark/parser/lib/parser/lexer/literal.rb:250:in `delimiter?'\r\n /Users/koic/src/github.com/whitequark/parser/lib/parser/lexer/literal.rb:138:in `nest_and_try_closing'\r\n /Users/koic/src/github.com/whitequark/parser/lib/parser/lexer-strings.rb:4165:in `advance'\r\n /Users/koic/src/github.com/whitequark/parser/lib/parser/lexer-F1.rb:11369:in `advance'\r\n test/test_lexer.rb:81:in `assert_scanned'\r\n test/test_lexer.rb:1001:in `test_heredoc_plus_character'\r\n```","shortMessageHtmlLink":"- Fix an error when using heredoc with non-word delimiters (#987)"}},{"before":"5a7ea026f6a749383194a206e6a7e66f74facc53","after":"2620bc47cfdf90fdc0f7c3f70a1856656ded8b8a","ref":"refs/heads/master","pushedAt":"2024-01-06T18:24:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"f7543093fa74524175e727e2bd65f11d2bbd4417","after":"5a7ea026f6a749383194a206e6a7e66f74facc53","ref":"refs/heads/master","pushedAt":"2024-01-06T18:23:34.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"3f2bbef5b8a50e15d8c00a3055ab59fb5cb5c4a6","after":"f7543093fa74524175e727e2bd65f11d2bbd4417","ref":"refs/heads/master","pushedAt":"2024-01-06T18:22:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"- Supports Ruby 2.0+ runtime (#986)\n\nThis is an alternative approach to the changes in #985.\r\nThe Parser gem may be required to operate across as many Ruby versions as possible.\r\nThe use of `delete_suffix` starts from Parser version 3.3.0.0.\r\nTherefore, by replacing `delete_suffix` with `sub`, and releasing Parser 3.3.0.1,\r\nsupporting Ruby 2.0 would be feasible.","shortMessageHtmlLink":"- Supports Ruby 2.0+ runtime (#986)"}},{"before":"95d26953ebe823211845fb84cb93c18cd501f561","after":"3f2bbef5b8a50e15d8c00a3055ab59fb5cb5c4a6","ref":"refs/heads/master","pushedAt":"2024-01-06T16:33:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Fix incorrect required_ruby_version (#985)\n\nThis gem has used String#delete_suffix which was introduced at Ruby 2.5.\r\nhttps://github.com/whitequark/parser/blob/95d26953ebe823211845fb84cb93c18cd501f561/lib/parser/lexer/literal.rb#L250\r\n\r\nRef. https://github.com/ruby/ruby/blob/ruby_2_5/NEWS\r\n\r\nSo, even Ruby 2.0 can be installed now, however it will not work.","shortMessageHtmlLink":"Fix incorrect required_ruby_version (#985)"}},{"before":"fbfa66bb62c5d922e4e19b2df5bcb7dde508999c","after":"95d26953ebe823211845fb84cb93c18cd501f561","ref":"refs/heads/master","pushedAt":"2024-01-05T14:03:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"c883e13043754800cc3e84f43e3dc557e4a67793","after":"fbfa66bb62c5d922e4e19b2df5bcb7dde508999c","ref":"refs/heads/master","pushedAt":"2024-01-05T13:55:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"Bump version.","shortMessageHtmlLink":"Bump version."}},{"before":"f7bcf35807e3f7a9665124e2adfc6f76770b4abf","after":"c883e13043754800cc3e84f43e3dc557e4a67793","ref":"refs/heads/master","pushedAt":"2024-01-05T13:49:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"* current.rb: mark 3.3 branch as stable (#984)","shortMessageHtmlLink":"* current.rb: mark 3.3 branch as stable (#984)"}},{"before":"a80f67219807b4094f8e44ebb5cf85001245adf6","after":"f7bcf35807e3f7a9665124e2adfc6f76770b4abf","ref":"refs/heads/master","pushedAt":"2024-01-05T13:40:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"+ ruby33.y: reject ambiguous anonymous arguments (#983)\n\nThis commit tracks upstream commit ruby/ruby@a9f0961.","shortMessageHtmlLink":"+ ruby33.y: reject ambiguous anonymous arguments (#983)"}},{"before":"7c9498ff8946a37944e5b7166eb1e8f01f5978d3","after":"a80f67219807b4094f8e44ebb5cf85001245adf6","ref":"refs/heads/master","pushedAt":"2023-12-29T19:58:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"+ ruby33.y: extract arg_splat rule. (#981)\n\nThis commit tracks upstream commit ruby/ruby@11c2aa0.","shortMessageHtmlLink":"+ ruby33.y: extract arg_splat rule. (#981)"}},{"before":"fd23193e3698ad8fcb81717dcaa54ad93362f406","after":"7c9498ff8946a37944e5b7166eb1e8f01f5978d3","ref":"refs/heads/master","pushedAt":"2023-12-29T19:44:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"iliabylich","name":"Ilya Bylich","path":"/iliabylich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1265492?s=80&v=4"},"commit":{"message":"+ builder.rb: warn `it` in a block with no ordinary params. (#980)\n\nThis commit tracks upstream commit ruby/ruby@ae76c8a.","shortMessageHtmlLink":"+ builder.rb: warn it in a block with no ordinary params. (#980)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEO3LDvAA","startCursor":null,"endCursor":null}},"title":"Activity · whitequark/parser"}