Hi Kit,
> As you can see in the attached, the version of this module (1.23) is clearly
> higher than the previous version. Is this perhaps because dzil used the
> construction "$Mojo::UserAgent::Mockable::VERSION = '1.23';" rather than "our
> $VERSION = '1.23'"? Please advise.
If you look at the message from PAUSE:
> Status: Decreasing version number
> =================================
>
> module : Mojo::UserAgent::Mockable
> version: undef
> in file: lib/Mojo/UserAgent/Mockable.pm
> status : Not indexed because
> Mojo-UserAgent-Mockable-1.21/lib/Mojo/UserAgent/Mockable.pm
> in P/PO/POPEFELIX/Mojo-UserAgent-Mockable-1.21.tar.gz has a
> higher version number (1.21)
It’s saying that there isn’t a version number for the package, but there was in
a recent release.
If you look in the META.json shipped with your release, you’ll see the
following:
"provides" : {
"Mojo::UserAgent::Mockable" : {
"file" : "lib/Mojo/UserAgent/Mockable.pm"
},
"Mojo::UserAgent::Mockable::Request::Compare" : {
"file" : "lib/Mojo/UserAgent/Mockable/Request/Compare.pm"
},
"Mojo::UserAgent::Mockable::Serializer" : {
"file" : "lib/Mojo/UserAgent/Mockable/Serializer.pm"
}
},
If your dist’s metadata includes a “provides” section, then PAUSE won’t look at
your code to determine packages and versions. And your provides section doesn’t
have version numbers.
Then if we look at your dist.ini:
[MetaProvides::Package]
inherit_version = 0
inherit_missing = 0
meta_noindex = 1
You should set “inherit_version” to 1, which tells DZ to assume that all
packages have the same version number as the release. Or you could not set it,
since the default is 1.
Cheers,
Neil