Skip to content

add a warning for callback and array with less than 2 items #4777

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions language-snippets.ent
Original file line number Diff line number Diff line change
Expand Up @@ -739,6 +739,11 @@ use.</simpara></note>'>
<literal>0.99</literal> and <literal>0.1</literal> will both be cast to an
integer value of <literal>0</literal>, which will compare such values as equal.
</para>
<para>
The callback is not called if the input has less than 2 items,
an error (e.g. accessing an invalid key of an array) or an exception
will not be reported, unless you test it with 2 items or more.
Comment on lines +743 to +745
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small suggestion to split it up in 2 sentences, and a small correction (error->warning):

Suggested change
The callback is not called if the input has less than 2 items,
an error (e.g. accessing an invalid key of an array) or an exception
will not be reported, unless you test it with 2 items or more.
The callback is not called if the input has less than 2 items.
A warning (e.g. accessing an invalid key of an array) or an exception
will not be reported, unless you test it with 2 items or more.

What do you think?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm trying to explicitly explain that an error will go unnoticed, see the example here:

Or this one: https://3v4l.org/k0bHmC#vnull

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see. The reason I suggested warning is because invalid array keys normally don't cause errors, so the example is a bit weird.

Copy link
Contributor Author

@alexislefebvre alexislefebvre Jul 21, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My bad, it's a warning: https://3v4l.org/SuJRd#vnull

It also trigger a deprecation, that is also silenced if the array has only one element (previous example).

I'll have to find something more problematic than using an invalid key because a warning is not a big deal. The example should mention an unrecoverable error.

</para>
</caution>'>

<!ENTITY sort.callback.description.presort '<caution xmlns="http://docbook.org/ns/docbook">
Expand Down