{"action":"created","issue":{"url":"https://api.github.com/repos/jruby/jruby/issues/4734","repository_url":"https://api.github.com/repos/jruby/jruby","labels_url":"https://api.github.com/repos/jruby/jruby/issues/4734/labels{/name}","comments_url":"https://api.github.com/repos/jruby/jruby/issues/4734/comments","events_url":"https://api.github.com/repos/jruby/jruby/issues/4734/events","html_url":"https://github.com/jruby/jruby/issues/4734","id":248017930,"number":4734,"title":"haml-lint hangs with JRuby 9.1.12.0","user":{"login":"HarlemSquirrel","id":6445815,"avatar_url":"https://avatars0.githubusercontent.com/u/6445815?v=4","gravatar_id":"","url":"https://api.github.com/users/HarlemSquirrel","html_url":"https://github.com/HarlemSquirrel","followers_url":"https://api.github.com/users/HarlemSquirrel/followers","following_url":"https://api.github.com/users/HarlemSquirrel/following{/other_user}","gists_url":"https://api.github.com/users/HarlemSquirrel/gists{/gist_id}","starred_url":"https://api.github.com/users/HarlemSquirrel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HarlemSquirrel/subscriptions","organizations_url":"https://api.github.com/users/HarlemSquirrel/orgs","repos_url":"https://api.github.com/users/HarlemSquirrel/repos","events_url":"https://api.github.com/users/HarlemSquirrel/events{/privacy}","received_events_url":"https://api.github.com/users/HarlemSquirrel/received_events","type":"User","site_admin":false},"labels":[{"id":302705246,"url":"https://api.github.com/repos/jruby/jruby/labels/regression","name":"regression","color":"e11d21","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/jruby/jruby/milestones/65","html_url":"https://github.com/jruby/jruby/milestone/65","labels_url":"https://api.github.com/repos/jruby/jruby/milestones/65/labels","id":2688236,"number":65,"title":"JRuby 9.1.13.0","description":"","creator":{"login":"enebo","id":19819,"avatar_url":"https://avatars1.githubusercontent.com/u/19819?v=4","gravatar_id":"","url":"https://api.github.com/users/enebo","html_url":"https://github.com/enebo","followers_url":"https://api.github.com/users/enebo/followers","following_url":"https://api.github.com/users/enebo/following{/other_user}","gists_url":"https://api.github.com/users/enebo/gists{/gist_id}","starred_url":"https://api.github.com/users/enebo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/enebo/subscriptions","organizations_url":"https://api.github.com/users/enebo/orgs","repos_url":"https://api.github.com/users/enebo/repos","events_url":"https://api.github.com/users/enebo/events{/privacy}","received_events_url":"https://api.github.com/users/enebo/received_events","type":"User","site_admin":false},"open_issues":6,"closed_issues":6,"state":"open","created_at":"2017-08-08T14:12:54Z","updated_at":"2017-08-17T15:17:07Z","due_on":null,"closed_at":null},"comments":8,"created_at":"2017-08-04T14:10:48Z","updated_at":"2017-08-17T20:04:56Z","closed_at":null,"body":"### Environment\r\n\r\n```\r\n➤  ruby -v\r\njruby 9.1.12.0 (2.3.3) 2017-06-15 33c6439 OpenJDK 64-Bit Server VM 25.131-b11 on 1.8.0_131-8u131-b11-2ubuntu1.16.04.3-b11 +jit [linux-x86_64]\r\n\r\n➤  bundle show haml_lint                                                                                                         7 ↵\r\n~/.rvm/gems/jruby-9.1.12.0/gems/haml_lint-0.26.0\r\n```\r\n\r\n### Expected Behavior\r\n\r\nWith JRuby 9.1.7.0 `haml-lint` runs as expected in a few seconds\r\n\r\n```\r\n➤  JRUBY_OPTS='--dev --profile' haml-lint app/**/*.html.haml   \r\nProfiling enabled; ^C shutdown will now dump profile info\r\nwarning: parser/current is loading parser/ruby23, which recognizes\r\nwarning: 2.3.3-compliant syntax, but you are running 2.3.1.\r\nwarning: please see https://github.com/whitequark/parser#compatibility-with-ruby-mri.\r\napp/views/auth/logout.html.haml:6 [W] SpaceInsideHashAttributes: Hash attribute should start with one space after the opening brace\r\napp/views/auth/logout.html.haml:6 [W] SpaceInsideHashAttributes: Hash attribute should end with one space before the closing brace\r\napp/views/auth/logout.html.haml:6 [W] LineLength: Line is too long. [95/80]\r\n...\r\napp/views/services/show.html.haml:18 [W] RuboCop: unexpected token tCOLON\r\n(Using Ruby 2.1 parser; configure using `TargetRubyVersion` parameter, under `AllCops`)\r\n\r\n32 files inspected, 236 lints detected\r\n\r\nmain profile results:\r\nTotal time: 9.19\r\n\r\n     total        self    children       calls  method\r\n----------------------------------------------------------------\r\n      8.27        0.07        8.20          29  Kernel.load\r\n      8.03        0.12        7.91         284  Kernel.eval\r\n      6.28        0.04        6.23       83047  Array#each\r\n      5.52        0.01        5.51       27823  Array#map\r\n      5.30        0.00        5.30           1  HamlLint::CLI#run\r\n      5.29        0.00        5.29           1  HamlLint::CLI#act_on_options\r\n      5.29        0.00        5.29           1  HamlLint::CLI#scan_for_lints\r\n      5.29        0.00        5.29           1  HamlLint::Runner#run\r\n      5.25        0.00        5.25           1  HamlLint::Runner#report\r\n      5.25        0.00        5.25           1  HamlLint::Runner#process_files\r\n      5.25        0.00        5.25          32  HamlLint::Runner#process_file\r\n      5.23        0.00        5.23          32  HamlLint::Runner#collect_lints\r\n      5.08        0.00        5.07         896  HamlLint::Linter#run\r\n      5.07        0.00        5.07       21634  HamlLint::HamlVisitor.visit\r\n      4.71        0.05        4.66       43268  HamlLint::HamlVisitor.safe_send\r\n      4.70        0.01        4.69      137108  Kernel.send\r\n      3.32        0.02        3.30        2111  Kernel.require\r\n      3.09        0.00        3.09        1014  Kernel.require\r\n      2.67        0.00        2.67          32  HamlLint::Linter::RuboCop#visit_root\r\n      2.60        0.00        2.60          32  HamlLint::Linter::RuboCop#find_lints\r\n      2.60        0.00        2.60          32  HamlLint::Linter::RuboCop#with_ruby_from_stdin\r\n      2.59        0.00        2.59          32  HamlLint::Linter::RuboCop#lint_file\r\n      2.59        0.00        2.59          32  RuboCop::CLI#run\r\n      2.37        0.00        2.37       21634  HamlLint::HamlVisitor.visit_children\r\n      2.36        0.08        2.28       98355  Class#new\r\n      2.34        0.00        2.34          32  RuboCop::CLI#execute_runner\r\n      2.34        0.00        2.34          32  RuboCop::Runner#run\r\n      2.33        0.00        2.33          32  RuboCop::Runner#inspect_files\r\n      2.33        0.00        2.33         522  Enumerable.inject\r\n      2.33        0.00        2.33          32  RuboCop::Runner#each_inspected_file\r\n      2.32        0.00        2.32          32  RuboCop::Runner#process_file\r\n      2.32        0.00        2.32          32  RuboCop::Runner#file_offenses\r\n      2.32        0.00        2.32          32  RuboCop::Runner#file_offense_cache\r\n      2.06        0.00        2.06        1108  Parser::Base#parse\r\n      2.06        0.00        2.06       15282  BasicObject#__send__\r\n      2.05        0.00        2.04        1108  Racc::Parser#do_parse\r\n      2.04        0.06        1.98        1108  Racc::Parser#_racc_do_parse_c\r\n      1.67        0.00        1.67        1076  HamlLint::RubyParser#parse\r\n      1.60        0.01        1.60        8817  Parser::Base#next_token\r\n      1.60        1.12        0.48        8817  Parser::Lexer#advance\r\n      1.58        0.02        1.56         205  Kernel.loop\r\n      1.38        0.00        1.38          32  RuboCop::Runner#do_inspection_loop\r\n      1.38        0.00        1.38          32  RuboCop::Runner#iterate_until_no_changes\r\n      1.37        0.00        1.37          32  RuboCop::Runner#inspect_file\r\n      1.24        0.13        1.11        2433  Enumerable.find\r\n      1.12        0.00        1.11         902  Gem::Specification.find_active_stub_by_path\r\n      0.98        0.00        0.98         596  HamlLint::Linter::InstanceVariables#visit_script\r\n      0.81        0.00        0.81         115  HamlLint::Tree::ScriptNode#parsed_script\r\n      0.76        0.00        0.76           1  Gem::ExecutableHooks.run\r\n      0.75        0.00        0.75          32  RuboCop::Cop::Team#inspect_file\r\n```\r\n\r\n### Actual Behavior\r\n\r\nCommand runs extremely slowly or hangs until ^C is issued when running with 9.1.12.0. \r\n\r\n```\r\n➤  JRUBY_OPTS='--dev --profile' haml-lint app/**/*.html.haml   \r\nProfiling enabled; ^C shutdown will now dump profile info\r\napp/views/auth/logout.html.haml:6 [W] SpaceInsideHashAttributes: Hash attribute should start with one space after the opening brace\r\napp/views/auth/logout.html.haml:6 [W] SpaceInsideHashAttributes: Hash attribute should end with one space before the closing brace\r\napp/views/auth/logout.html.haml:6 [W] LineLength: Line is too long. [95/80]\r\napp/views/auth/logout.html.haml:6 [W] RuboCop: Space inside { missing.\r\napp/views/auth/logout.html.haml:6 [W] RuboCop: Use the new Ruby 1.9 hash syntax.\r\napp/views/auth/logout.html.haml:6 [W] RuboCop: Prefer single-quoted strings when you don't need string interpolation or special symbols.\r\napp/views/auth/logout.html.haml:6 [W] RuboCop: Use the new Ruby 1.9 hash syntax.\r\napp/views/auth/logout.html.haml:6 [W] RuboCop: Prefer single-quoted strings when you don't need string interpolation or special symbols.\r\napp/views/auth/logout.html.haml:6 [W] RuboCop: Use the new Ruby 1.9 hash syntax.\r\napp/views/auth/logout.html.haml:6 [W] RuboCop: Prefer single-quoted strings when you don't need string interpolation or special symbols.\r\napp/views/auth/logout.html.haml:6 [W] RuboCop: Use the new Ruby 1.9 hash syntax.\r\napp/views/auth/logout.html.haml:6 [W] RuboCop: Prefer single-quoted strings when you don't need string interpolation or special symbols.\r\napp/views/auth/logout.html.haml:6 [W] RuboCop: Space inside } missing.\r\n^C\r\nExiting... Interrupt again to exit immediately.\r\n^C\r\nmain profile results:\r\nTotal time: 1.44\r\n\r\n     total        self    children       calls  method\r\n----------------------------------------------------------------\r\n    126.85      113.70       13.15    24165653  Racc::Parser#_racc_evalact\r\n      7.95        7.95        0.00   205486175  Array#[]\r\n      6.24        5.41        0.84    12091140  BasicObject#!=\r\n      2.61        2.61        0.00    24170062  Array#push\r\n      2.31        1.43        0.87    24192617  Array#length\r\n      2.29        0.02        2.27        2990  Kernel.require\r\n      2.23        2.23        0.00    24166561  Array#pop\r\n      1.35        1.35        0.00    24168699  Fixnum#-@\r\n      0.93       -0.49        1.42       13646  Array#each\r\n      0.89        0.00        0.89           1  Gem::ExecutableHooks.run\r\n      0.85        0.07        0.78       15219  Class#new\r\n      0.84        0.84        0.00    12105334  BasicObject#!\r\n      0.83        0.00        0.83       16143  Kernel.send\r\n      0.80       -0.26        1.05        3216  Array#map\r\n      0.76        0.00        0.76          49  HamlLint::Linter#run\r\n      0.76        0.00        0.76         715  HamlLint::HamlVisitor.visit\r\n      0.74        0.00        0.74        1425  HamlLint::HamlVisitor.safe_send\r\n      0.73        0.00        0.73         111  Kernel.require\r\n      0.71        0.00        0.71           2  HamlLint::Linter::RuboCop#visit_root\r\n      0.70        0.00        0.70           2  HamlLint::Linter::RuboCop#find_lints\r\n      0.70        0.00        0.70           2  HamlLint::Linter::RuboCop#with_ruby_from_stdin\r\n      0.70        0.00        0.70           2  HamlLint::Linter::RuboCop#lint_file\r\n      0.70        0.00        0.70           2  RuboCop::CLI#run\r\n      0.69        0.00        0.69         404  Enumerable.inject\r\n      0.68        0.00        0.68           2  RuboCop::CLI#execute_runner\r\n      0.68        0.00        0.68           2  RuboCop::Runner#run\r\n      0.68        0.00        0.68           2  RuboCop::Runner#inspect_files\r\n      0.68        0.00        0.68           2  RuboCop::Runner#each_inspected_file\r\n      0.68        0.00        0.68           2  RuboCop::Runner#process_file\r\n      0.68        0.00        0.68           2  RuboCop::Runner#file_offenses\r\n      0.68        0.00        0.68           2  RuboCop::Runner#file_offense_cache\r\n      0.62        0.00        0.62        2173  Proc#call\r\n      0.59        0.00        0.59           1  Noexec#check\r\n      0.59        0.00        0.59           1  Noexec#setup\r\n      0.50        0.00        0.50           2  HamlLint::Runner#process_file\r\n      0.50       -0.01        0.51           2  HamlLint::Runner#collect_lints\r\n      0.48        0.00        0.48           1  Noexec#candidate?\r\n      0.42       -1.25        1.67          29  Kernel.load\r\n      0.40        0.01        0.39         235  Gem::Specification.load\r\n      0.35        0.01        0.35          18  Kernel.loop\r\n      0.33        0.00        0.33         229  Gem::StubSpecification#to_spec\r\n      0.32        0.14        0.18         266  Kernel.eval\r\n      0.29        0.00        0.29           1  Gem.load_executable_plugins\r\n      0.29        0.00        0.29           1  Gem.find_latest_files\r\n      0.26        0.00        0.26           2  RuboCop::Runner#do_inspection_loop\r\n      0.26        0.00        0.26           2  RuboCop::Runner#iterate_until_no_changes\r\n      0.26        0.00        0.26           2  RuboCop::Runner#inspect_file\r\n      0.25        0.00        0.25           1  Gem::Specification.latest_specs\r\n      0.25        0.00        0.25           2  Gem::Specification._all\r\n      0.24        0.00        0.24        2067  BasicObject#__send__\r\nException in thread \"Thread-1\" java.lang.IllegalStateException: Shutdown in progress\r\n\tat java.lang.ApplicationShutdownHooks.add(ApplicationShutdownHooks.java:66)\r\n\tat java.lang.Runtime.addShutdownHook(Runtime.java:211)\r\n\tat org.jruby.runtime.profile.builtin.ProfileOutput.footerAndCleanupOnShutdown(ProfileOutput.java:36)\r\n\tat org.jruby.runtime.profile.builtin.ProfileOutput.printProfile(ProfileOutput.java:31)\r\n\tat org.jruby.runtime.profile.builtin.BuiltinProfilingService$DefaultProfileReporter.report(BuiltinProfilingService.java:120)\r\n\tat org.jruby.Ruby.printProfileData(Ruby.java:3331)\r\n\tat org.jruby.Ruby.tearDown(Ruby.java:3291)\r\n\tat org.jruby.Ruby.tearDown(Ruby.java:3189)\r\n\tat org.jruby.Main$1.run(Main.java:283)\r\n\r\n```\r\nI also opened this issue with haml-lint\r\nhttps://github.com/brigade/haml-lint/issues/257"},"comment":{"url":"https://api.github.com/repos/jruby/jruby/issues/comments/323179337","html_url":"https://github.com/jruby/jruby/issues/4734#issuecomment-323179337","issue_url":"https://api.github.com/repos/jruby/jruby/issues/4734","id":323179337,"user":{"login":"HarlemSquirrel","id":6445815,"avatar_url":"https://avatars0.githubusercontent.com/u/6445815?v=4","gravatar_id":"","url":"https://api.github.com/users/HarlemSquirrel","html_url":"https://github.com/HarlemSquirrel","followers_url":"https://api.github.com/users/HarlemSquirrel/followers","following_url":"https://api.github.com/users/HarlemSquirrel/following{/other_user}","gists_url":"https://api.github.com/users/HarlemSquirrel/gists{/gist_id}","starred_url":"https://api.github.com/users/HarlemSquirrel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HarlemSquirrel/subscriptions","organizations_url":"https://api.github.com/users/HarlemSquirrel/orgs","repos_url":"https://api.github.com/users/HarlemSquirrel/repos","events_url":"https://api.github.com/users/HarlemSquirrel/events{/privacy}","received_events_url":"https://api.github.com/users/HarlemSquirrel/received_events","type":"User","site_admin":false},"created_at":"2017-08-17T20:04:56Z","updated_at":"2017-08-17T20:04:56Z","body":"Looks like I've found the commit\r\n\r\n```\r\n3fe1cc2353e8b051a7541d3cb63d5210e99d8539 is the first bad commit\r\ncommit 3fe1cc2353e8b051a7541d3cb63d5210e99d8539\r\nAuthor: Charles Oliver Nutter <headius@headius.com>\r\nDate:   Mon May 15 14:02:39 2017 -0500\r\n\r\n    Use actual racc/parser.rb from MRI 2.3. For #4603.\r\n\r\n:040000 040000 9e6b985b8bfa9ec600c86d3932476ab8b1964b9f b96df1b32d1741fd54d1f696c578c3ef3d499ece M\tlib\r\nbisect run success\r\n```"}}
{"actor":{"display_login":"HarlemSquirrel"}}