The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Net::API::CPAN::Release - Meta CPAN API Release Class

SYNOPSIS

    use Net::API::CPAN::Release;
    my $obj = Net::API::CPAN::Release->new( {
      abstract => "Japan Folklore Object Class",
      archive => "Folklore-Japan-v1.2.3.tar.gz",
      author => "MOMOTARO",
      authorized => \1,
      changes_file => "CHANGES",
      checksum_md5 => "71682907d95a4b0a4b74da8c16e88d2d",
      checksum_sha256 => "27d4da9e772bc1922618b36fdefa768344d92c3d65a5e3cc427218cfc8d7491d",
      date => "2023-07-29T05:10:12",
      dependency => [
        {
          module => "ExtUtils::MakeMaker",
          phase => "configure",
          relationship => "requires",
          version => 0,
        },
        {
          module => "ExtUtils::MakeMaker",
          phase => "build",
          relationship => "requires",
          version => 0,
        },
        {
          module => "Module::Generic",
          phase => "runtime",
          relationship => "requires",
          version => "v0.30.6",
        },
        {
          module => "DateTime::Format::JP",
          phase => "runtime",
          relationship => "requires",
          version => "v0.1.3",
        },
        {
          module => "Mock::Person::JP",
          phase => "runtime",
          relationship => "requires",
          version => "0.07",
        },
        {
          module => "Net::Airline::ANA",
          phase => "runtime",
          relationship => "requires",
          version => "2.34",
        },
        {
          module => "Transport::Limousine::Bus",
          phase => "runtime",
          relationship => "requires",
          version => "3.45",
        },
        {
          module => "Net::Reservation::KorakuenGarden",
          phase => "runtime",
          relationship => "requires",
          version => "v0.2.3",
        },
        {
          module => "Net::Reservation::OkayamaCastle",
          phase => "runtime",
          relationship => "requires",
          version => "4.03",
        },
        {
          module => "strict",
          phase => "runtime",
          relationship => "requires",
          version => 0,
        },
        {
          module => "warnings",
          phase => "runtime",
          relationship => "requires",
          version => 0,
        },
        {
          module => "parent",
          phase => "runtime",
          relationship => "requires",
          version => 0,
        },
        {
          module => "perl",
          phase => "runtime",
          relationship => "requires",
          version => "5.026001",
        },
        {
          module => "Test::Pod",
          phase => "test",
          relationship => "requires",
          version => "1.52",
        },
        {
          module => "Test::More",
          phase => "test",
          relationship => "requires",
          version => "1.302162",
        },
      ],
      deprecated => \0,
      distribution => "Folklore-Japan",
      download_url => "https://cpan.metacpan.org/authors/id/M/MO/MOMOTARO/Folklore-Japan-v0.30.5.tar.gz",
      first => \0
    ,
      id => "Wo09n3d3er4s_56Of7_J8ap9an",
      license => [
        "perl_5",
      ],
      main_module => "Folklore::Japan",
      maturity => "released",
      metadata => {
        abstract => "Japan Folklore Object Class",
        author => [
          "Taro Momo <momo.taro\@example.jp>",
        ],
        dynamic_config => 1,
        generated_by => "ExtUtils::MakeMaker version 7.64, CPAN::Meta::Converter version 2.150010, CPAN::Meta::Converter version 2.150005",
        license => [
          "perl_5",
        ],
        "meta-spec" => {
          url => "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
          version => 2,
        },
        name => "Folklore-Japan",
        no_index => {
          directory => [
            "t",
            "inc",
            "t",
            "xt",
            "inc",
            "local",
            "perl5",
            "fatlib",
            "example",
            "blib",
            "examples",
            "eg",
          ],
        },
        prereqs => {
          build => {
            requires => {
              "ExtUtils::MakeMaker" => 0,
            },
          },
          configure => {
            requires => {
              "ExtUtils::MakeMaker" => 0,
            },
          },
          runtime => {
            requires => {
              "DateTime::Format::JP" => "v0.1.3",
              "ExtUtils::MakeMaker" => 0,
              "Mock::Person::JP" => "0.07",
              "Module::Generic" => "v0.30.6",
              "Net::Airline::ANA" => "2.34",
              "Net::Reservation::KorakuenGarden" => "v0.2.3",
              "Net::Reservation::OkayamaCastle" => "4.03",
              "Test::More" => "1.302162",
              "Test::Pod" => "1.52",
              "Transport::Limousine::Bus" => "3.45",
              parent => 0,
              perl => "5.026001",
              strict => 0,
              warnings => 0,
            },
          },
          test => {
            requires => {
              "Test::More" => "1.302162",
              "Test::Pod" => "1.52",
            },
          },
        },
        release_status => "stable",
        resources => {
          bugtracker => {
            web => "https://gitlab.com/momotaro/Folklore-Japan/issues",
          },
          homepage => {
            web => "https://www.okayama-japan.jp/en/feature/momotaro",
          },
          repository => {
            type => "git",
            web => "https://gitlab.com/momotaro/Folklore-Japan",
          },
        },
        version => "v1.2.3",
      },
      name => "Folklore-Japan-v1.2.3",
      provides => [
        "Folklore::Japan",
        "Folklore::Japan::AmaterasuOmikami",
        "Folklore::Japan::Izumo",
        "Folklore::Japan::Kintaro",
        "Folklore::Japan::Kitsune",
        "Folklore::Japan::Kojiki",
        "Folklore::Japan::MomoTaro",
        "Folklore::Japan::NihonShoki",
        "Folklore::Japan::Okayama",
        "Folklore::Japan::Susanoo",
        "Folklore::Japan::Tanuki",
        "Folklore::Japan::Tengu",
        "Folklore::Japan::UrashimaTaro",
      ],
      resources => {
        bugtracker => {
          web => "https://gitlab.com/momotaro/Folklore-Japan/issues",
        },
        repository => {
          type => "git",
          web => "https://gitlab.com/momotaro/Folklore-Japan",
        },
      },
      stat => {
        gid => 12345,
        mode => 33188,
        mtime => 1690618397,
        size => 10240,
        uid => 16790,
      },
      status => "latest",
      version => "v1.2.3",
      version_numified => "1.002003",
    } ) || die( Net::API::CPAN::Release->error );
    
    my $string = $obj->abstract;
    my $string = $obj->archive;
    my $string = $obj->author;
    my $bool = $obj->authorized;
    my $string = $obj->changes_file;
    my $string = $obj->checksum_md5;
    my $string = $obj->checksum_sha256;
    my $date = $obj->date;
    my $array = $obj->dependency;
    foreach my $this ( @$array )
    {
        my $scalar = $this->module;
        my $scalar = $this->phase;
        my $scalar = $this->relationship;
        my $HASH(0xaaaac89729f0) = $this->version;
    }
    my $bool = $obj->deprecated;
    my $string = $obj->distribution;
    my $uri = $obj->download_url;
    my $bool = $obj->first;
    my $string = $obj->id;
    my $array = $obj->license;
    my $string = $obj->main_module;
    my $string = $obj->maturity;
    my $this = $obj->metadata;
    my $scalar = $obj->metadata->abstract;
    my $array = $obj->metadata->author;
    my $boolean = $obj->metadata->dynamic_config;
    my $scalar = $obj->metadata->generated_by;
    my $array = $obj->metadata->license;
    my $meta_spec_obj = $obj->metadata->meta_spec;
    my $scalar = $obj->metadata->name;
    my $no_index_obj = $obj->metadata->no_index;
    my $prereqs_obj = $obj->metadata->prereqs;
    my $scalar = $obj->metadata->release_status;
    my $resources_obj = $obj->metadata->resources;
    my $version_obj = $obj->metadata->version;
    my $float = $obj->metadata->version_numified;
    my $x_contributors_obj = $obj->metadata->x_contributors;
    my $x_generated_by_perl_obj = $obj->metadata->x_generated_by_perl;
    my $x_serialization_backend_obj = $obj->metadata->x_serialization_backend;
    my $x_spdx_expression_obj = $obj->metadata->x_spdx_expression;
    my $x_static_install_obj = $obj->metadata->x_static_install;
    my $string = $obj->name;
    my $str = $obj->object;
    my $array = $obj->provides;
    my $this = $obj->resources;
    my $bugtracker_obj = $obj->resources->bugtracker;
    my $homepage_obj = $obj->resources->homepage;
    my $array = $obj->resources->license;
    my $repository_obj = $obj->resources->repository;
    my $this = $obj->stat;
    my $integer = $obj->stat->gid;
    my $integer = $obj->stat->mode;
    my $datetime = $obj->stat->mtime;
    my $integer = $obj->stat->size;
    my $integer = $obj->stat->uid;
    my $string = $obj->status;
    my $this = $obj->tests;
    my $integer = $obj->tests->fail;
    my $integer = $obj->tests->na;
    my $integer = $obj->tests->pass;
    my $integer = $obj->tests->unknown;
    my $vers = $obj->version;
    my $num = $obj->version_numified;

VERSION

    v0.1.0

DESCRIPTION

This class serves to retrieve and manipulate releases.

It inherits from Net::API::CPAN::Generic

CONSTRUCTOR

new

Provided with an hash or hash reference of parameters, and this instantiates a new Net::API::CPAN::Release object.

The parameters that can be provided bear the same name and supports the same values as the methods below.

METHODS

abstract

    $obj->abstract( "Japan Folklore Object Class" );
    my $string = $obj->abstract;

Sets or gets a string and returns a scalar object, even if there is no value.

archive

    $obj->archive( "Folklore-Japan-v1.2.3.tar.gz" );
    my $string = $obj->archive;

Sets or gets a string and returns a scalar object, even if there is no value.

author

    $obj->author( "MOMOTARO" );
    my $string = $obj->author;

Sets or gets a string and returns a scalar object, even if there is no value.

authorized

    $obj->authorized(1);
    my $bool = $obj->authorized;

Sets or gets a boolean value, and returns a boolean object or undef if no value is set.

changes_file

    $obj->changes_file( "CHANGES" );
    my $string = $obj->changes_file;

Sets or gets a string and returns a scalar object, even if there is no value.

checksum_md5

    $obj->checksum_md5( "71682907d95a4b0a4b74da8c16e88d2d" );
    my $string = $obj->checksum_md5;

Sets or gets a string and returns a scalar object, even if there is no value.

checksum_sha256

    $obj->checksum_sha256( "27d4da9e772bc1922618b36fdefa768344d92c3d65a5e3cc427218cfc8d7491d" );
    my $string = $obj->checksum_sha256;

Sets or gets a string and returns a scalar object, even if there is no value.

date

    $obj->date( "2023-07-29T05:10:12" );
    my $datetime_obj = $obj->date;

Sets or gets a datetime value, and returns a DateTime object that stringifies to the format that was provided with the string set (usally an ISO 8601 datetime format) or undef if no value is set.

dependency

    $obj->dependency( [
      {
        module => "ExtUtils::MakeMaker",
        phase => "configure",
        relationship => "requires",
        version => 0,
      },
      {
        module => "ExtUtils::MakeMaker",
        phase => "build",
        relationship => "requires",
        version => 0,
      },
      {
        module => "Module::Generic",
        phase => "runtime",
        relationship => "requires",
        version => "v0.30.6",
      },
      {
        module => "DateTime::Format::JP",
        phase => "runtime",
        relationship => "requires",
        version => "v0.1.3",
      },
      {
        module => "Mock::Person::JP",
        phase => "runtime",
        relationship => "requires",
        version => "0.07",
      },
      {
        module => "Net::Airline::ANA",
        phase => "runtime",
        relationship => "requires",
        version => "2.34",
      },
      {
        module => "Transport::Limousine::Bus",
        phase => "runtime",
        relationship => "requires",
        version => "3.45",
      },
      {
        module => "Net::Reservation::KorakuenGarden",
        phase => "runtime",
        relationship => "requires",
        version => "v0.2.3",
      },
      {
        module => "Net::Reservation::OkayamaCastle",
        phase => "runtime",
        relationship => "requires",
        version => "4.03",
      },
      {
        module => "strict",
        phase => "runtime",
        relationship => "requires",
        version => 0,
      },
      {
        module => "warnings",
        phase => "runtime",
        relationship => "requires",
        version => 0,
      },
      {
        module => "parent",
        phase => "runtime",
        relationship => "requires",
        version => 0,
      },
      {
        module => "perl",
        phase => "runtime",
        relationship => "requires",
        version => "5.026001",
      },
      {
        module => "Test::Pod",
        phase => "test",
        relationship => "requires",
        version => "1.52",
      },
      {
        module => "Test::More",
        phase => "test",
        relationship => "requires",
        version => "1.302162",
      },
    ] );
    my $array = $obj->dependency;
    foreach my $this ( @$array )
    {
        $this->module( "ExtUtils::MakeMaker" );
        my $scalar = $this->module;
        $this->phase( "configure" );
        my $scalar = $this->phase;
        $this->relationship( "requires" );
        my $scalar = $this->relationship;
        $this->version( 0 );
        my $HASH(0xaaaac89729f0) = $this->version;
    }

Sets or gets an array of dynamic class objects with class name Net::API::CPAN::Release::Dependency and having the folowing properties also accessible as methods, and returns an array object even if there is no value.

A Net::API::CPAN::Release::Dependency object will be instantiated with each value from the array provided and replace said value.

  • module scalar_as_object

  • phase scalar_as_object

  • relationship scalar_as_object

  • version version object

deprecated

    $obj->deprecated(1);
    my $bool = $obj->deprecated;

Sets or gets a boolean value, and returns a boolean object or undef if no value is set.

distribution

    $obj->distribution( "Folklore-Japan" );
    my $string = $obj->distribution;

Sets or gets a string and returns a scalar object, even if there is no value.

download_url

    $obj->download_url( "https://cpan.metacpan.org/authors/id/M/MO/MOMOTARO/Folklore-Japan-v0.30.5.tar.gz" );
    my $uri = $obj->download_url;

Sets or gets an URI, and returns an URI object or undef if no value is set.

first

    $obj->first(1);
    my $bool = $obj->first;

Sets or gets a boolean value, and returns a boolean object or undef if no value is set.

id

    $obj->id( "Wo09n3d3er4s_56Of7_J8ap9an" );
    my $string = $obj->id;

Sets or gets a string and returns a scalar object, even if there is no value.

license

    $obj->license( [
      "perl_5",
    ] );
    my $array = $obj->license;

Sets or gets an array of licenses and returns an array object, even if there is no value.

main_module

    $obj->main_module( "Folklore::Japan" );
    my $string = $obj->main_module;

Sets or gets a string and returns a scalar object, even if there is no value.

maturity

    $obj->maturity( "released" );
    my $string = $obj->maturity;

Sets or gets a string and returns a scalar object, even if there is no value.

metadata

    $obj->metadata( {
      abstract => "Japan Folklore Object Class",
      author => [
        "Taro Momo <momo.taro\@example.jp>",
      ],
      dynamic_config => 1,
      generated_by => "ExtUtils::MakeMaker version 7.64, CPAN::Meta::Converter version 2.150010, CPAN::Meta::Converter version 2.150005",
      license => [
        "perl_5",
      ],
      "meta-spec" => {
        url => "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
        version => 2,
      },
      name => "Folklore-Japan",
      no_index => {
        directory => [
          "t",
          "inc",
          "t",
          "xt",
          "inc",
          "local",
          "perl5",
          "fatlib",
          "example",
          "blib",
          "examples",
          "eg",
        ],
      },
      prereqs => {
        build => {
          requires => {
            "ExtUtils::MakeMaker" => 0,
          },
        },
        configure => {
          requires => {
            "ExtUtils::MakeMaker" => 0,
          },
        },
        runtime => {
          requires => {
            "DateTime::Format::JP" => "v0.1.3",
            "ExtUtils::MakeMaker" => 0,
            "Mock::Person::JP" => "0.07",
            "Module::Generic" => "v0.30.6",
            "Net::Airline::ANA" => "2.34",
            "Net::Reservation::KorakuenGarden" => "v0.2.3",
            "Net::Reservation::OkayamaCastle" => "4.03",
            "Test::More" => "1.302162",
            "Test::Pod" => "1.52",
            "Transport::Limousine::Bus" => "3.45",
            parent => 0,
            perl => "5.026001",
            strict => 0,
            warnings => 0,
          },
        },
        test => {
          requires => {
            "Test::More" => "1.302162",
            "Test::Pod" => "1.52",
          },
        },
      },
      release_status => "stable",
      resources => {
        bugtracker => {
          web => "https://gitlab.com/momotaro/Folklore-Japan/issues",
        },
        homepage => {
          web => "https://www.okayama-japan.jp/en/feature/momotaro",
        },
        repository => {
          type => "git",
          web => "https://gitlab.com/momotaro/Folklore-Japan",
        },
      },
      version => "v1.2.3",
    } );
    my $this = $obj->metadata;
    $obj->metadata->abstract( "Japan Folklore Object Class" );
    my $scalar = $obj->metadata->abstract;
    $obj->metadata->author( [
      "Taro Momo <momo.taro\@example.jp>",
    ] );
    my $array = $obj->metadata->author;
    $obj->metadata->dynamic_config( 1 );
    my $boolean = $obj->metadata->dynamic_config;
    $obj->metadata->generated_by( "ExtUtils::MakeMaker version 7.64, CPAN::Meta::Converter version 2.150010, CPAN::Meta::Converter version 2.150005" );
    my $scalar = $obj->metadata->generated_by;
    $obj->metadata->license( [
      "perl_5",
    ] );
    my $array = $obj->metadata->license;
    my $meta_spec_obj = $obj->metadata->meta_spec;
    $obj->metadata->name( "Folklore-Japan" );
    my $scalar = $obj->metadata->name;
    $obj->metadata->no_index( {
      directory => [
        "t",
        "inc",
        "t",
        "xt",
        "inc",
        "local",
        "perl5",
        "fatlib",
        "example",
        "blib",
        "examples",
        "eg",
      ],
    } );
    my $no_index_obj = $obj->metadata->no_index;
    $obj->metadata->prereqs( {
      build => {
        requires => {
          "ExtUtils::MakeMaker" => 0,
        },
      },
      configure => {
        requires => {
          "ExtUtils::MakeMaker" => 0,
        },
      },
      runtime => {
        requires => {
          "DateTime::Format::JP" => "v0.1.3",
          "ExtUtils::MakeMaker" => 0,
          "Mock::Person::JP" => "0.07",
          "Module::Generic" => "v0.30.6",
          "Net::Airline::ANA" => "2.34",
          "Net::Reservation::KorakuenGarden" => "v0.2.3",
          "Net::Reservation::OkayamaCastle" => "4.03",
          "Test::More" => "1.302162",
          "Test::Pod" => "1.52",
          "Transport::Limousine::Bus" => "3.45",
          parent => 0,
          perl => "5.026001",
          strict => 0,
          warnings => 0,
        },
      },
      test => {
        requires => {
          "Test::More" => "1.302162",
          "Test::Pod" => "1.52",
        },
      },
    } );
    my $prereqs_obj = $obj->metadata->prereqs;
    $obj->metadata->release_status( "stable" );
    my $scalar = $obj->metadata->release_status;
    $obj->metadata->resources( {
      bugtracker => {
        web => "https://gitlab.com/momotaro/Folklore-Japan/issues",
      },
      homepage => {
        web => "https://www.okayama-japan.jp/en/feature/momotaro",
      },
      repository => {
        type => "git",
        web => "https://gitlab.com/momotaro/Folklore-Japan",
      },
    } );
    my $resources_obj = $obj->metadata->resources;
    $obj->metadata->version( "v1.2.3" );
    my $version_obj = $obj->metadata->version;
    my $float = $obj->metadata->version_numified;
    my $x_contributors_obj = $obj->metadata->x_contributors;
    my $x_generated_by_perl_obj = $obj->metadata->x_generated_by_perl;
    my $x_serialization_backend_obj = $obj->metadata->x_serialization_backend;
    my $x_spdx_expression_obj = $obj->metadata->x_spdx_expression;
    my $x_static_install_obj = $obj->metadata->x_static_install;

Sets or gets a dynamic class object with class name Net::API::CPAN::Release::Metadata and having the folowing properties also accessible as methods, and returns an object from such class, or undef if no value was provided.

  • abstract scalar_as_object

  • author array (array object)

  • dynamic_config boolean (boolean object)

  • generated_by scalar_as_object

  • license array (array object)

  • meta_spec dynamic subclass (hash reference)

  • name scalar_as_object

  • no_index dynamic subclass (hash reference)

  • prereqs dynamic subclass (hash reference)

    • build dynamic subclass (hash reference)

      • recommends hash_as_object

      • requires hash_as_object

      • suggests hash_as_object

    • configure dynamic subclass (hash reference)

      • recommends hash_as_object

      • requires hash_as_object

      • suggests hash_as_object

    • develop dynamic subclass (hash reference)

      • recommends hash_as_object

      • requires hash_as_object

      • suggests hash_as_object

    • runtime dynamic subclass (hash reference)

      • recommends hash_as_object

      • requires hash_as_object

      • suggests hash_as_object

    • test dynamic subclass (hash reference)

      • recommends hash_as_object

      • requires hash_as_object

      • suggests hash_as_object

  • release_status scalar_as_object

  • resources dynamic subclass (hash reference)

  • version version object

  • version_numified integer (number object)

  • x_contributors array (array object)

  • x_generated_by_perl string

  • x_serialization_backend string

  • x_spdx_expression string

  • x_static_install string

name

    $obj->name( "Folklore-Japan-v1.2.3" );
    my $string = $obj->name;

Sets or gets a string and returns a scalar object, even if there is no value.

object

Returns the object type for this class, which is release

provides

    $obj->provides( [
      "Folklore::Japan",
      "Folklore::Japan::AmaterasuOmikami",
      "Folklore::Japan::Izumo",
      "Folklore::Japan::Kintaro",
      "Folklore::Japan::Kitsune",
      "Folklore::Japan::Kojiki",
      "Folklore::Japan::MomoTaro",
      "Folklore::Japan::NihonShoki",
      "Folklore::Japan::Okayama",
      "Folklore::Japan::Susanoo",
      "Folklore::Japan::Tanuki",
      "Folklore::Japan::Tengu",
      "Folklore::Japan::UrashimaTaro",
    ] );
    my $array = $obj->provides;

Sets or gets an array of module class names and returns an array object, even if there is no value.

resources

    $obj->resources( {
      bugtracker => {
        web => "https://gitlab.com/momotaro/Folklore-Japan/issues",
      },
      repository => {
        type => "git",
        web => "https://gitlab.com/momotaro/Folklore-Japan",
      },
    } );
    my $this = $obj->resources;
    $obj->resources->bugtracker( {
      web => "https://gitlab.com/momotaro/Folklore-Japan/issues",
    } );
    my $bugtracker_obj = $obj->resources->bugtracker;
    my $homepage_obj = $obj->resources->homepage;
    my $array = $obj->resources->license;
    $obj->resources->repository( {
      type => "git",
      web => "https://gitlab.com/momotaro/Folklore-Japan",
    } );
    my $repository_obj = $obj->resources->repository;

Sets or gets a dynamic class object with class name Net::API::CPAN::Release::Resources and having the folowing properties also accessible as methods, and returns an object from such class, or undef if no value was provided.

stat

    $obj->stat( {
      gid => 12345,
      mode => 33188,
      mtime => 1690618397,
      size => 10240,
      uid => 16790,
    } );
    my $this = $obj->stat;
    $obj->stat->gid( 12345 );
    my $integer = $obj->stat->gid;
    $obj->stat->mode( 33188 );
    my $integer = $obj->stat->mode;
    $obj->stat->mtime( 1690618397 );
    my $datetime = $obj->stat->mtime;
    $obj->stat->size( 10240 );
    my $integer = $obj->stat->size;
    $obj->stat->uid( 16790 );
    my $integer = $obj->stat->uid;

Sets or gets a dynamic class object with class name Net::API::CPAN::Release::Stat and having the folowing properties also accessible as methods, and returns an object from such class, or undef if no value was provided.

status

    $obj->status( "latest" );
    my $string = $obj->status;

Sets or gets a string and returns a scalar object, even if there is no value.

tests

Sets or gets a dynamic class object with class name Net::API::CPAN::Release::Tests and having the folowing properties also accessible as methods, and returns an object from such class, or undef if no value was provided.

version

    $obj->version( "v1.2.3" );
    my $version = $obj->version;

Sets or gets a version value and returns a version object using Changes::Version.

version_numified

    $obj->version_numified("1.002003");
    my $number = $obj->version_numified;

Sets or gets a float value, and returns a number object or undef if no value is set.

API SAMPLE

    {
       "abstract" : "Japan Folklore Object Class",
       "archive" : "Folklore-Japan-v1.2.3.tar.gz",
       "author" : "MOMOTARO",
       "authorized" : true,
       "changes_file" : "CHANGES",
       "checksum_md5" : "71682907d95a4b0a4b74da8c16e88d2d",
       "checksum_sha256" : "27d4da9e772bc1922618b36fdefa768344d92c3d65a5e3cc427218cfc8d7491d",
       "date" : "2023-07-29T05:10:12",
       "dependency" : [
          {
             "module" : "ExtUtils::MakeMaker",
             "phase" : "configure",
             "relationship" : "requires",
             "version" : "0"
          },
          {
             "module" : "ExtUtils::MakeMaker",
             "phase" : "build",
             "relationship" : "requires",
             "version" : "0"
          },
          {
             "module" : "Module::Generic",
             "phase" : "runtime",
             "relationship" : "requires",
             "version" : "v0.30.6"
          },
          {
             "module" : "DateTime::Format::JP",
             "phase" : "runtime",
             "relationship" : "requires",
             "version" : "v0.1.3"
          },
          {
             "module" : "Mock::Person::JP",
             "phase" : "runtime",
             "relationship" : "requires",
             "version" : "0.07"
          },
          {
             "module" : "Net::Airline::ANA",
             "phase" : "runtime",
             "relationship" : "requires",
             "version" : "2.34"
          },
          {
             "module" : "Transport::Limousine::Bus",
             "phase" : "runtime",
             "relationship" : "requires",
             "version" : "3.45"
          },
          {
             "module" : "Net::Reservation::KorakuenGarden",
             "phase" : "runtime",
             "relationship" : "requires",
             "version" : "v0.2.3"
          },
          {
             "module" : "Net::Reservation::OkayamaCastle",
             "phase" : "runtime",
             "relationship" : "requires",
             "version" : "4.03"
          },
          {
             "module" : "strict",
             "phase" : "runtime",
             "relationship" : "requires",
             "version" : "0"
          },
          {
             "module" : "warnings",
             "phase" : "runtime",
             "relationship" : "requires",
             "version" : "0"
          },
          {
             "module" : "parent",
             "phase" : "runtime",
             "relationship" : "requires",
             "version" : "0"
          },
          {
             "module" : "perl",
             "phase" : "runtime",
             "relationship" : "requires",
             "version" : "5.026001"
          },
          {
             "module" : "Test::Pod",
             "phase" : "test",
             "relationship" : "requires",
             "version" : "1.52"
          },
          {
             "module" : "Test::More",
             "phase" : "test",
             "relationship" : "requires",
             "version" : "1.302162"
          }
       ],
       "deprecated" : false,
       "distribution" : "Folklore-Japan",
       "download_url" : "https://cpan.metacpan.org/authors/id/M/MO/MOMOTARO/Folklore-Japan-v0.30.5.tar.gz",
       "first" : false,
       "id" : "Wo09n3d3er4s_56Of7_J8ap9an",
       "license" : [
          "perl_5"
       ],
       "main_module" : "Folklore::Japan",
       "maturity" : "released",
       "metadata" : {
          "abstract" : "Japan Folklore Object Class",
          "author" : [
             "Taro Momo <momo.taro@example.jp>"
          ],
          "dynamic_config" : 1,
          "generated_by" : "ExtUtils::MakeMaker version 7.64, CPAN::Meta::Converter version 2.150010, CPAN::Meta::Converter version 2.150005",
          "license" : [
             "perl_5"
          ],
          "meta-spec" : {
             "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
             "version" : 2
          },
          "name" : "Folklore-Japan",
          "no_index" : {
             "directory" : [
                "t",
                "inc",
                "t",
                "xt",
                "inc",
                "local",
                "perl5",
                "fatlib",
                "example",
                "blib",
                "examples",
                "eg"
             ]
          },
          "prereqs" : {
             "build" : {
                "requires" : {
                   "ExtUtils::MakeMaker" : "0"
                }
             },
             "configure" : {
                "requires" : {
                   "ExtUtils::MakeMaker" : "0"
                }
             },
             "runtime" : {
                "requires" : {
                   "DateTime::Format::JP" : "v0.1.3",
                   "ExtUtils::MakeMaker" : "0",
                   "Mock::Person::JP" : "0.07",
                   "Module::Generic" : "v0.30.6",
                   "Net::Airline::ANA" : "2.34",
                   "Net::Reservation::KorakuenGarden" : "v0.2.3",
                   "Net::Reservation::OkayamaCastle" : "4.03",
                   "Test::More" : "1.302162",
                   "Test::Pod" : "1.52",
                   "Transport::Limousine::Bus" : "3.45",
                   "parent" : "0",
                   "perl" : "5.026001",
                   "strict" : "0",
                   "warnings" : "0"
                }
             },
             "test" : {
                "requires" : {
                   "Test::More" : "1.302162",
                   "Test::Pod" : "1.52",
                }
             }
          },
          "release_status" : "stable",
          "resources" : {
             "bugtracker" : {
                "web" : "https://gitlab.com/momotaro/Folklore-Japan/issues"
             },
             "repository" : {
                "type" : "git",
                "web" : "https://gitlab.com/momotaro/Folklore-Japan"
             },
             "homepage" : {
                "web" : "https://www.okayama-japan.jp/en/feature/momotaro"
             }
          },
          "version" : "v1.2.3",
       },
       "name" : "Folklore-Japan-v1.2.3",
       "provides" : [
          "Folklore::Japan",
          "Folklore::Japan::AmaterasuOmikami",
          "Folklore::Japan::Izumo",
          "Folklore::Japan::Kintaro",
          "Folklore::Japan::Kitsune",
          "Folklore::Japan::Kojiki",
          "Folklore::Japan::MomoTaro",
          "Folklore::Japan::NihonShoki",
          "Folklore::Japan::Okayama",
          "Folklore::Japan::Susanoo",
          "Folklore::Japan::Tanuki",
          "Folklore::Japan::Tengu",
          "Folklore::Japan::UrashimaTaro",
       ],
       "resources" : {
          "bugtracker" : {
             "web" : "https://gitlab.com/momotaro/Folklore-Japan/issues"
          },
          "repository" : {
             "type" : "git",
             "web" : "https://gitlab.com/momotaro/Folklore-Japan"
          }
       },
       "stat" : {
          "gid" : 12345,
          "mode" : 33188,
          "mtime" : 1690618397,
          "size" : 10240,
          "uid" : 16790
       },
       "status" : "latest",
       "version" : "v1.2.3",
       "version_numified" : 1.002003
    }

AUTHOR

Jacques Deguest <jack@deguest.jp>

SEE ALSO

Net::API::CPAN, Net::API::CPAN::Activity, Net::API::CPAN::Author, Net::API::CPAN::Changes, Net::API::CPAN::Changes::Release, Net::API::CPAN::Contributor, Net::API::CPAN::Cover, Net::API::CPAN::Diff, Net::API::CPAN::Distribution, Net::API::CPAN::DownloadUrl, Net::API::CPAN::Favorite, Net::API::CPAN::File, Net::API::CPAN::Module, Net::API::CPAN::Package, Net::API::CPAN::Permission, Net::API::CPAN::Rating, Net::API::CPAN::Release

MetaCPAN::API, MetaCPAN::Client

https://github.com/metacpan/metacpan-api/blob/master/docs/API-docs.md

COPYRIGHT & LICENSE

Copyright(c) 2023 DEGUEST Pte. Ltd.

All rights reserved

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.