Config::IniFiles initialization returns undef in CGI::Application plugin test
Maintainer antworten meist innerhalb von 1 Tag
Ein zugehöriger Pull Request wurde bereits gemerged.
- #1799 von @fglock — gemerged
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 18/100
Rechercherichtung
The failure is in t/CGI-Application-Plugin-Config-IniFiles.t and t/TestConfigIniFiles.pm at the run_mode call to $self->config->val("main", "title"). Start by reproducing with a small script that calls Config::IniFiles->new(-file => ...) on the distribution's test.conf and printing @Config::IniFiles::errors to see why ReadConfig returns false under PerlOnJava. Done means the object is defined on both backends and all 9 assertions pass.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Summary
The CPAN test suite for CGI-Application-Plugin-Config-IniFiles 0.03 fails under PerlOnJava when the plugin reads its valid test.conf configuration. System Perl passes the full target suite.
Failure evidence
- CPAN tester run:
20261013-145839-84917 - Distribution:
CGI-Application-Plugin-Config-IniFiles0.03 (ARTO) - Failing test:
t/CGI-Application-Plugin-Config-IniFiles.t - Failure site:
t/TestConfigIniFiles.pm,run_mode, at$self->config->val("main", "title") - PerlOnJava result: test exits after 2 of 9 planned assertions with
Can't call method "val" on an undefined value. - System Perl oracle: all 9 tests pass. The archived oracle used Perl 5.42.2 and installed
CGI::Application4.61 andConfig::IniFiles3.003000. - PerlOnJava setup also used
CGI::Application4.61; the availableConfig::IniFilesis 3.003000. Its target test environment includes the distribution'stest.conf.
Root cause
CGI::Application::Plugin::Config::IniFiles::config_file assigns the return value of Config::IniFiles->new(-file => $file) to the app's __CONFIG field. In the failing PerlOnJava run, that initialization produces undef; the plugin's config() accessor then returns the stored undef, causing the later val call to fail. The same valid configuration initializes successfully under system Perl.
This localizes the incompatibility to PerlOnJava's interaction with Config::IniFiles initialization or file parsing. The archived output does not include @Config::IniFiles::errors or identify the specific low-level operation, so the precise parser/filehandle semantic still needs to be isolated.
Proposed fix
- Add a focused regression that loads a small INI file with
Config::IniFiles->new(-file => ...), checks the returned object and a knownval, and runs on both PerlOnJava backends. - Instrument or reduce the failing path to capture
@Config::IniFiles::errorsand determine whyReadConfigreturns false under PerlOnJava. Fix the underlying runtime or file-reading incompatibility instead of masking the undefined object in the plugin. - Keep the plugin integration scenario as coverage and require all 9 upstream assertions to pass on both backends and system Perl.
Environment and limitations
The available archived log records the macOS Homebrew system Perl path, but does not record the PerlOnJava commit, JVM version, or an interpreter-backend result. Reverse-dependency counts do not apply: this distribution and the identified dependencies are pure Perl.
- Vorherrschende Sprache
- Perl
- Sterne
- 64
- Forks
- 7
- Ø Merge
- 5 Std. 31 Min.
- Gemergte PRs (30 T.)
- 214
Entwicklungsumgebung
- Enthält ein Dockerfile oder eine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus fglock/PerlOnJava
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
fglock/PerlOnJava#1579 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 48/100
fglock/PerlOnJava#1835 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:cpan-port bug
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 68/100
fglock/PerlOnJava#1820 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 Ein halber Tag Anfängerfreundlichkeit 45/100
fglock/PerlOnJava#1808 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:cpan-port area:runtime bug
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 28/100
fglock/PerlOnJava#1802 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in fglock/PerlOnJava
Ähnliche Issues
-
Add .gitattributes so share/skel keeps LF on a Windows git checkoutEvtl. vergeben @sadhana-s-codez hat das vor 1 Tag übernommen. Offen
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
PerlDancer/Dancer2#1854 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
major/MySQLTuner-perl#1007 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 69/100
bioconda/bioconda-recipes#70187 ·
Maintainer antworten meist innerhalb von 2 Tagen