develooper Front page | perl.perl5.changes | Postings from August 2022

[Perl/perl5] 5104f2: error messages - do not repeat class namestwice i...

From:
Yves Orton via perl5-changes
Date:
August 26, 2022 16:49
Subject:
[Perl/perl5] 5104f2: error messages - do not repeat class namestwice i...
Message ID:
Perl/perl5/push/refs/heads/yves/no_repeat_package/000000-5104f2@github.com
  Branch: refs/heads/yves/no_repeat_package
  Home:   https://github.com/Perl/perl5
  Commit: 5104f2c3fe351260e6fb95e34895d49a237b5c7c
      https://github.com/Perl/perl5/commit/5104f2c3fe351260e6fb95e34895d49a237b5c7c
  Author: Yves Orton <demerphq@gmail.com>
  Date:   2022-08-26 (Fri, 26 Aug 2022)

  Changed paths:
    M gv.c
    M pod/perldiag.pod
    M pp_sys.c
    M t/lib/warnings/gv
    M t/op/tie.t
    M t/run/fresh_perl.t

  Log Message:
  -----------
  error messages - do not repeat class names twice in our error messages

Showing the classname twice in the error message just increases
cognitive load understanding the message when the class/package name
is more than a few components long, and can easily make what should be
a simple one line error message wrap and be unreadable.

We can simply replace the second invocation of the class name by saying
"it" instead, and that is what this patch does. It is still friendly,
but not repetitive.

Thus:
$ perl -le'("x" x 50)->new()'
Can't locate object method "new" via package "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
 (perhaps you forgot to load "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"?) at -e line 1.

Turns into:
$ ./perl -le'("x" x 50)->new()'
Can't locate object method "new" via package "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
 (perhaps you forgot to load it?) at -e line 1.





nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About