[
https://issues.apache.org/jira/browse/AVRO-4239?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated AVRO-4239:
---------------------------------
Labels: pull-request-available (was: )
> Perl porting - Lacks of version number
> --------------------------------------
>
> Key: AVRO-4239
> URL: https://issues.apache.org/jira/browse/AVRO-4239
> Project: Apache Avro
> Issue Type: Bug
> Components: perl
> Affects Versions: 1.11.4
> Environment: Red Hat Enterprise Linux release 8.10 (Ootpa)
> {code:java}
> perl -v{code}
> This is perl 5, version 26, subversion 3 (v5.26.3) built for
> x86_64-linux-thread-multi
> (with 58 registered patches, see perl -V for more detail)
> Copyright 1987-2018, Larry Wall
> Perl may be copied only under the terms of either the Artistic License or the
> GNU General Public License, which may be found in the Perl 5 source kit.
> Complete documentation for Perl, including FAQ lists, should be found on
> this system using "man perl" or "perldoc perl". If you have access to the
> Internet, point your browser at http://www.perl.org/, the Perl Home Page.
>
> Reporter: Alvaro Livraghi
> Priority: Major
> Labels: pull-request-available
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Starting with v1.11.4, the Perl porting fails to dinamically set the
> {{$VERSION}} variable when installing from CPAN or from {{{}.tar.gz{}}}.
> After a bit of investigation, I noticed that the
> {{[build.sh|https://github.com/apache/avro/blob/release-1.11.4/lang/perl/build.sh]}}
> script no longer copies {{VERSION.txt}} (from {{{}../../share{}}}) as in
> previous versions.
> At the same time, the
> {{[Makefile.PL|https://github.com/apache/avro/blob/release-1.11.4/lang/perl/Makefile.PL]}}
> expects the version file to be in {{{}../../share/VERSION.txt{}}}, which,
> when installing from CPAN or directly from {{{}.tar.gz{}}}, cannot exist.
> This results in an unversioned Avro Perl installation as shown in the follow:
> {code:bash}
> cpanm Avro{code}
> {noformat}
> --> Working on Avro
> Fetching http://www.cpan.org/authors/id/R/RS/RSKRABA/Avro-1.12.1.tar.gz ... OK
> Configuring Avro-1.12.1 ... OK
> Building and testing Avro-1.12.1 ... OK
> Successfully installed Avro-1.12.1
> 1 distribution installed{noformat}
> Indeed, checking the version reveals that it is not available:
> {code:bash}
> perl -MAvro\ v1.12.1{code}
> {noformat}
> Invalid version format (version required).
> BEGIN failed--compilation aborted.
> {noformat}
> Even looking at the module file, I notice that the {{$VERSION}} variable
> isn't initialized with the expected version number (v1.12.1) but it is empty:
> {code:bash}
> find ~/perl5/ -type f -name Avro.pm -exec grep -n '$VERSION' {} \;{code}
> {noformat}
> 22:our $VERSION = '';{noformat}
> This creates potential inconsistencies when installing libraries that depend
> on {{{}Avro{}}}, as they can't verify its version.
> Is it possible to revert to the previous approach?
--
This message was sent by Atlassian Jira
(v8.20.10#820010)