From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on starla X-Spam-Level: X-Spam-Status: No, score=-1.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 Received: from nue.mailmanlists.eu (nue.mailmanlists.eu [94.130.110.93]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id 1108B1F44D for ; Sat, 17 Feb 2024 10:48:38 +0000 (UTC) Received: from nue.mailmanlists.eu (localhost [127.0.0.1]) by nue.mailmanlists.eu (Postfix) with ESMTP id EA6B582A69; Sat, 17 Feb 2024 10:48:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ml.ruby-lang.org; s=mail; t=1708166910; bh=pQmw3leD69M22iXZGtXnSAT9dTJUj+pOEjBYocMIFUM=; h=Date:References:To:Reply-To:Subject:List-Id:List-Archive: List-Help:List-Owner:List-Post:List-Subscribe:List-Unsubscribe: From:Cc:From; b=BkpWreDLEa5K9wjgW4MP2lC2kcy/p0Ev3lIPuh06xWh1Iz/E2xmk/xI1ZPDHDjrXW wDAYQURf2fVHj2aB9abIS8hAWgPMGa6qH6WTi3n/M4YQxsSChzxzhjbbDwe3RJFv56 /UTk3GPxuslBimcM4MBw7F4QDKnGNFKvLn8P2sHQ= Received: from wrqvtvtt.outbound-mail.sendgrid.net (wrqvtvtt.outbound-mail.sendgrid.net [149.72.120.119]) by nue.mailmanlists.eu (Postfix) with ESMTPS id 8540982A65 for ; Sat, 17 Feb 2024 10:48:26 +0000 (UTC) Authentication-Results: nue.mailmanlists.eu; dkim=pass (2048-bit key; unprotected) header.d=ruby-lang.org header.i=@ruby-lang.org header.a=rsa-sha256 header.s=s1 header.b=SLGZLtKl; dkim-atps=neutral DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ruby-lang.org; h=from:references:subject:mime-version:content-type: content-transfer-encoding:list-id:to:cc:content-type:from:subject:to; s=s1; bh=qVXrvGD9yz5Tfofbci9PrIO8m9aNZiLfklHsqriowEk=; b=SLGZLtKlpw/Q7o5pKr6Y7QFF8XE/abjaacGUJeCk/rtx6Ch5L06CDSQ7urak9QgJfn6M NatNwrsbYsPJfOtZ3VQDG/V20a/+4XrsadZPiiUBReli26MHupN/dsaG8v+n90oQQIWfXQ TVIwZatiAfDwFE1WG/0zuG0Rf3PmdWVxqxVgjLEL2KHECv5noLCmMNhelzYFsHFd07KdRi JRM9J8awZCUuBtmPIo0mUxZT3BMcApl9SkLW1+MOdwF2LXKDXG+Ga70kiAd6p8ZthwNI0T X2RxtjV1suHUGG1qu1ihsxlGv06hTXXbCZneTnmH+XeBus29Cfl//brM5IFhJQ3w== Received: by filterdrecv-674cc56c7b-xqn8g with SMTP id filterdrecv-674cc56c7b-xqn8g-1-65D08EF9-9 2024-02-17 10:48:25.408070151 +0000 UTC m=+270690.296988289 Received: from herokuapp.com (unknown) by geopod-ismtpd-27 (SG) with ESMTP id RphQRxEFQ8qauAHP7N4pRA for ; Sat, 17 Feb 2024 10:48:25.349 +0000 (UTC) Date: Sat, 17 Feb 2024 10:48:25 +0000 (UTC) Message-ID: References: Mime-Version: 1.0 X-Redmine-Project: ruby-master X-Redmine-Issue-Tracker: Feature X-Redmine-Issue-Id: 19117 X-Redmine-Issue-Author: byroot X-Redmine-Sender: Eregon X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-Redmine-MailingListIntegration-Message-Ids: 93377 X-SG-EID: =?us-ascii?Q?DvL3W2Xo+Vk=2FeUn3F50L=2FNc8u9NqZCnbE0mXZHiyye4R1YZg=2FtAFc0SAFzpcS=2F?= =?us-ascii?Q?Zcr7BqPN=2FYCcMZBMITNeIci9STxYay0JAJWPbek?= =?us-ascii?Q?rFR+qWSfDgmTNPobJ06IOORTEZRVERzMO9Wh+Rm?= =?us-ascii?Q?quF03=2FP7b9njw2GfjatjilG6Kb7byDZItaXFYrU?= =?us-ascii?Q?+n+8wkIkxFPFzMhfJ2L=2FyE2a=2F0OBCD3avX9rdEb?= =?us-ascii?Q?+=2FTsqRr4DvJFTCKHSw9AayP+UVEoGtmdfNDjlea?= =?us-ascii?Q?nvXGd3KDboc9ICzFwqkBg=3D=3D?= To: ruby-core@ml.ruby-lang.org X-Entity-ID: b/2+PoftWZ6GuOu3b0IycA== Message-ID-Hash: JJZ55TMV4YYN5Q3LDWA7ML4BCMJEGNIT X-Message-ID-Hash: JJZ55TMV4YYN5Q3LDWA7ML4BCMJEGNIT X-MailFrom: bounces+313651-b711-ruby-core=ml.ruby-lang.org@em5188.ruby-lang.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.3 Precedence: list Reply-To: Ruby developers Subject: [ruby-core:116821] [Ruby master Feature#19117] Include the method owner in backtraces, not just the method name List-Id: Ruby developers Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: "Eregon (Benoit Daloze) via ruby-core" Cc: "Eregon (Benoit Daloze)" Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Issue #19117 has been updated by Eregon (Benoit Daloze). > I think that we should discuss further improvements in a separate ticket. OK: #20275 ---------------------------------------- Feature #19117: Include the method owner in backtraces, not just the method name https://bugs.ruby-lang.org/issues/19117#change-106846 * Author: byroot (Jean Boussier) * Status: Closed * Priority: Normal * Target version: 3.4 ---------------------------------------- ``` module Foo class Bar def inspect 1 + '1' end end end p Foo::Bar.new ``` This code produce the following backtrace: ``` /tmp/foo.rb:4:in `+': String can't be coerced into Integer (TypeError) from /tmp/foo.rb:4:in `inspect' from /tmp/foo.rb:9:in `p' from /tmp/foo.rb:9:in `
' ``` This works, but on large codebases and large backtraces the method name isn't always all that revealing, most of the time you need to open many of the locations listed in the backtrace to really understand what is going on. I propose that we also include the owner name: ``` /tmp/foo.rb:4:in `Integer#+': String can't be coerced into Integer (TypeError) from /tmp/foo.rb:4:in `Foo::Bar#inspect' from /tmp/foo.rb:9:in `Kernel#p' from /tmp/foo.rb:9:in `
' ``` I believe that in many case it would allow to much better understand the backtrace without having to jump back and forth between it and the source code. This is inspired by @ivoanjo 's `backtracie` gem: https://github.com/ivoanjo/backtracie -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/