View Issue Details

IDProjectCategoryView StatusLast Update
0000326My infrastructureGeneralpublic2025-09-28 13:25
Reporterdvl Assigned Todvl  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Summary0000326: does vuxml_parsing.pm assume two values for a range?
DescriptionFrom dvl-ingress01 vuxml.log:

Sep 23 21:03:46 dvl-ingress01 freshports[16475]: Use of uninitialized value $_[0] in substr at /usr/local/lib/perl5/site_perl/IO/String.pm line 313.
Sep 23 21:03:46 dvl-ingress01 freshports[16475]: Negative repeat count does nothing at /usr/local/lib/perl5/site_perl/FreshPorts/vuxml_parsing.pm line 725.
Sep 23 21:03:46 dvl-ingress01 freshports[16475]: Negative repeat count does nothing at /usr/local/lib/perl5/site_perl/FreshPorts/vuxml_parsing.pm line 507.
Sep 23 21:04:14 dvl-ingress01 freshports[16475]: process_vuxml.sh finished with exit status '0' and ''


Possibly related to one of:

* https://cgit.freebsd.org/ports/commit/?id=8ff1e4729c620fbc3913cc133248f68de6f06f31
* https://cgit.freebsd.org/ports/commit/?id=59e881240397247ebdbb8df07b875018fc79063d
* https://cgit.freebsd.org/ports/commit/?id=bc49b2190bef7ecac2082d1fa666a3ac50f8667a
TagsNo tags attached.

Activities

dvl

2025-09-26 16:26

manager   ~0000425

Last edited: 2025-09-26 17:05

I can reproduce it here:

freshports.dvl=# delete from vuxml where vid = '32bdeb94-9958-11f0-b6e2-6805ca2fa271';
DELETE 1
freshports.dvl=# commit;
WARNING:  there is no transaction in progress


Followed by:

$ touch ~/signals/vuxml && ./process_vuxml.sh
Use of uninitialized value $_[0] in substr at /usr/local/lib/perl5/site_perl/IO/String.pm line 313.
$ id
uid=10001(freshports) gid=10001(freshports) groups=10001(freshports)
$ 


oh, that produces only the "Use of uninitialized value $_[0] in substr at /usr/local/lib/perl5/site_perl/IO/String.pm line 313" message. Not the other messages.

dvl

2025-09-26 17:18

manager   ~0000426

Ahh 57b54de1-85a5-439a-899e-75d19cbdff54 does it. I suspect it's the length of the versions.

freshports.dvl=# select max(length(version1)), max(length(version2)) from vuxml_ranges;
 max | max 
-----+-----
  21 |  19
(1 row)

dvl

2025-09-26 17:41

manager   ~0000427

This fixes the negative messages:

[17:37 dvl-ingress01 dvl ~/modules] % svn di
Index: vuxml_parsing.pm
===================================================================
--- vuxml_parsing.pm	(revision 6192)
+++ vuxml_parsing.pm	(working copy)
@@ -504,8 +504,18 @@
 
         if ( $package->range() ) {
             for my $range ( $package->range() ) {
+                #
+                # based on this:
+                # freshports.dvl=# select max(length(version1)), max(length(version2)) from vuxml_ranges;
+                #  max | max 
+                # -----+-----
+                #   21 |  19
+                # (1 row)
+                #
+                # without that, we get Negative repeat count does nothing at /usr/local/lib/perl5/site_perl/FreshPorts/vuxml_parsing.pm line 507
+                # look for a similar '25 - length' around line 735.
                 print $range->[0], ": ", $range->[1],
-                  " " x ( 10 - length $range->[1] );
+                  " " x ( 25 - length $range->[1] );
                 if ( $range->[2] ) {
                     print $range->[2], ": ", $range->[3], "\n";
                 }
@@ -722,8 +732,18 @@
         if ( $self->range() ) {
             for my $range ( $self->range() ) {
                 print " " x 15;
+                #
+                # based on this:
+                # freshports.dvl=# select max(length(version1)), max(length(version2)) from vuxml_ranges;
+                #  max | max 
+                # -----+-----
+                #   21 |  19
+                # (1 row)
+                #
+                # without that, we get Negative repeat count does nothing at /usr/local/lib/perl5/site_perl/FreshPorts/vuxml_parsing.pm line 507
+                # look for a similar '25 - length' around line 516.
                 print $range->[0], ": ", $range->[1],
-                  " " x ( 10 - length $range->[1] );
+                  " " x ( 25 - length $range->[1] );
                 if ( $range->[2] ) {
                     print $range->[2], ": ", $range->[3], "\n";
                 }

dvl

2025-09-28 13:24

manager   ~0000428

It wasn't what I thought it was.

dvl

2025-09-28 13:25

manager   ~0000429

However, the patch fixed some warnings. The IO/String.pm message is for that package to fix.

Issue History

Date Modified Username Field Change
2025-09-24 11:48 dvl New Issue
2025-09-24 11:48 dvl Status new => assigned
2025-09-24 11:48 dvl Assigned To => dvl
2025-09-24 19:04 dvl Description Updated
2025-09-26 16:26 dvl Note Added: 0000425
2025-09-26 17:05 dvl Note Edited: 0000425
2025-09-26 17:18 dvl Note Added: 0000426
2025-09-26 17:41 dvl Note Added: 0000427
2025-09-28 13:24 dvl Note Added: 0000428
2025-09-28 13:25 dvl Note Added: 0000429
2025-09-28 13:25 dvl Status assigned => closed
2025-09-28 13:25 dvl Resolution open => fixed