[
https://issues.apache.org/jira/browse/THRIFT-4069?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
James E. King, III updated THRIFT-4069:
---------------------------------------
Description:
Currently our perl package module files contain multiple packages. We should
break each package out to an individual file and properly version it. Package
versioning was introduced in Perl 5.10 so:
1. Update the minimum required perl to 5.10.
2. For each package use the {{perl MODULE VERSION}} perlmod syntax, where
VERSION is {{v0.11.0}}.
3. Each module not under the Thrift namespace must be moved there. This will
be a breaking change.
Currently if you inspect the Perl PAUSE version metadata for Thrift's
sub-modules only the 0.9.0 modules from gslin have version identities.
For example if you look at Thrift and Thrift::BinaryProtocol in the CPAN list
of packages at http://www.cpan.org/modules/02packages.details.txt you will see:
{noformat}
Thrift 0.010000 J/JK/JKING/thrift/Thrift-0.10.0.tar.gz
Thrift::BinaryProtocol 0.009000 G/GS/GSLIN/Thrift-0.9.0.tar.gz
{noformat}
There are some anomalies, for example packages defined in Thrift.pm come out at
the top level namespace like:
{noformat}
TApplicationException 0.010000 J/JK/JKING/thrift/Thrift-0.10.0.tar.gz
TMessageType 0.010000 J/JK/JKING/thrift/Thrift-0.10.0.tar.gz
TType 0.010000 J/JK/JKING/thrift/Thrift-0.10.0.tar.gz
{noformat}
So technically if you do 'install TApplicationException' I would expect you
might get thrift. This is wrong and should be fixed. TApplicationException
needs to be inside Thrift, not at the top level.
was:
Currently our perl package module files contain multiple packages. We should
break each package out to an individual file and properly version it. Package
versioning was introduced in Perl 5.10 so:
1. Update the minimum required perl to 5.10.
2. For each package use the {{perl MODULE VERSION}} perlmod syntax, where
VERSION is {{v0.11.0}}.
3. Each module not under the Thrift namespace must be moved there. This will
be a breaking change.
Currently if you inspect the Perl PAUSE version metadata for Thrift's
sub-modules only the 0.9.0 modules from gslin have version identities.
For example if you look at Thrift and Thrift::BinaryProtocol in the CPAN list
of packages at http://www.cpan.org/modules/02packages.details.txt you will see:
Thrift 0.010000 J/JK/JKING/thrift/Thrift-0.10.0.tar.gz
Thrift::BinaryProtocol 0.009000 G/GS/GSLIN/Thrift-0.9.0.tar.gz
There are some anomalies, for example packages defined in Thrift.pm come out at
the top level namespace like:
TApplicationException 0.010000 J/JK/JKING/thrift/Thrift-0.10.0.tar.gz
TMessageType 0.010000 J/JK/JKING/thrift/Thrift-0.10.0.tar.gz
TType 0.010000 J/JK/JKING/thrift/Thrift-0.10.0.tar.gz
So technically if you do 'install TApplicationException' I would expect you
might get thrift. This is wrong and should be fixed. TApplicationException
needs to be inside Thrift, not at the top level.
> Perl packages should be in individual files and have proper version syntax
> --------------------------------------------------------------------------
>
> Key: THRIFT-4069
> URL: https://issues.apache.org/jira/browse/THRIFT-4069
> Project: Thrift
> Issue Type: Improvement
> Components: Perl - Library
> Affects Versions: 0.10.0
> Environment: Perl
> Reporter: James E. King, III
> Assignee: James E. King, III
>
> Currently our perl package module files contain multiple packages. We should
> break each package out to an individual file and properly version it.
> Package versioning was introduced in Perl 5.10 so:
> 1. Update the minimum required perl to 5.10.
> 2. For each package use the {{perl MODULE VERSION}} perlmod syntax, where
> VERSION is {{v0.11.0}}.
> 3. Each module not under the Thrift namespace must be moved there. This will
> be a breaking change.
> Currently if you inspect the Perl PAUSE version metadata for Thrift's
> sub-modules only the 0.9.0 modules from gslin have version identities.
> For example if you look at Thrift and Thrift::BinaryProtocol in the CPAN list
> of packages at http://www.cpan.org/modules/02packages.details.txt you will
> see:
> {noformat}
> Thrift 0.010000
> J/JK/JKING/thrift/Thrift-0.10.0.tar.gz
> Thrift::BinaryProtocol 0.009000 G/GS/GSLIN/Thrift-0.9.0.tar.gz
> {noformat}
> There are some anomalies, for example packages defined in Thrift.pm come out
> at the top level namespace like:
> {noformat}
> TApplicationException 0.010000
> J/JK/JKING/thrift/Thrift-0.10.0.tar.gz
> TMessageType 0.010000
> J/JK/JKING/thrift/Thrift-0.10.0.tar.gz
> TType 0.010000
> J/JK/JKING/thrift/Thrift-0.10.0.tar.gz
> {noformat}
> So technically if you do 'install TApplicationException' I would expect you
> might get thrift. This is wrong and should be fixed. TApplicationException
> needs to be inside Thrift, not at the top level.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)