Acme-CPANModules-MIMETypes

 view release on metacpan or  search on metacpan

META.json  view on Meta::CPAN

            "version" : "0.10"
         },
         {
            "class" : "Dist::Zilla::Plugin::PodnameFromFilename",
            "name" : "@Author::PERLANCAR/PodnameFromFilename",
            "version" : "0.02"
         },
         {
            "class" : "Dist::Zilla::Plugin::PERLANCAR::EnsurePrereqToSpec",
            "config" : {
               "Dist::Zilla::Role::ModuleMetadata" : {
                  "Module::Metadata" : "1.000037",
                  "version" : "0.006"
               }
            },
            "name" : "@Author::PERLANCAR/PERLANCAR::EnsurePrereqToSpec",
            "version" : "0.064"
         },
         {
            "class" : "Dist::Zilla::Plugin::PERLANCAR::MetaResources",
            "name" : "@Author::PERLANCAR/PERLANCAR::MetaResources",
            "version" : "0.043"

META.json  view on Meta::CPAN

            "version" : "0.001"
         },
         {
            "class" : "Dist::Zilla::Plugin::CheckSelfDependency",
            "config" : {
               "Dist::Zilla::Plugin::CheckSelfDependency" : {
                  "finder" : [
                     ":InstallModules"
                  ]
               },
               "Dist::Zilla::Role::ModuleMetadata" : {
                  "Module::Metadata" : "1.000037",
                  "version" : "0.006"
               }
            },
            "name" : "@Author::PERLANCAR/CheckSelfDependency",
            "version" : "0.011"
         },
         {
            "class" : "Dist::Zilla::Plugin::Git::Contributors",
            "config" : {
               "Dist::Zilla::Plugin::Git::Contributors" : {

META.json  view on Meta::CPAN

                     }
                  ],
                  "include_underscores" : 0
               },
               "Dist::Zilla::Role::MetaProvider::Provider" : {
                  "$Dist::Zilla::Role::MetaProvider::Provider::VERSION" : "2.002004",
                  "inherit_missing" : 1,
                  "inherit_version" : 1,
                  "meta_noindex" : 1
               },
               "Dist::Zilla::Role::ModuleMetadata" : {
                  "Module::Metadata" : "1.000037",
                  "version" : "0.006"
               }
            },
            "name" : "@Author::PERLANCAR/MetaProvides::Package",
            "version" : "2.004003"
         },
         {
            "class" : "Dist::Zilla::Plugin::PERLANCAR::Authority",
            "name" : "@Author::PERLANCAR/PERLANCAR::Authority",
            "version" : "0.001"

META.yml  view on Meta::CPAN

      class: Dist::Zilla::Plugin::Rinci::AbstractFromMeta
      name: '@Author::PERLANCAR/Rinci::AbstractFromMeta'
      version: '0.10'
    -
      class: Dist::Zilla::Plugin::PodnameFromFilename
      name: '@Author::PERLANCAR/PodnameFromFilename'
      version: '0.02'
    -
      class: Dist::Zilla::Plugin::PERLANCAR::EnsurePrereqToSpec
      config:
        Dist::Zilla::Role::ModuleMetadata:
          Module::Metadata: '1.000037'
          version: '0.006'
      name: '@Author::PERLANCAR/PERLANCAR::EnsurePrereqToSpec'
      version: '0.064'
    -
      class: Dist::Zilla::Plugin::PERLANCAR::MetaResources
      name: '@Author::PERLANCAR/PERLANCAR::MetaResources'
      version: '0.043'
    -
      class: Dist::Zilla::Plugin::CheckChangeLog
      name: '@Author::PERLANCAR/CheckChangeLog'

META.yml  view on Meta::CPAN

    -
      class: Dist::Zilla::Plugin::CheckMetaResources
      name: '@Author::PERLANCAR/CheckMetaResources'
      version: '0.001'
    -
      class: Dist::Zilla::Plugin::CheckSelfDependency
      config:
        Dist::Zilla::Plugin::CheckSelfDependency:
          finder:
            - ':InstallModules'
        Dist::Zilla::Role::ModuleMetadata:
          Module::Metadata: '1.000037'
          version: '0.006'
      name: '@Author::PERLANCAR/CheckSelfDependency'
      version: '0.011'
    -
      class: Dist::Zilla::Plugin::Git::Contributors
      config:
        Dist::Zilla::Plugin::Git::Contributors:
          git_version: 2.25.1
          include_authors: 0
          include_releaser: 1

META.yml  view on Meta::CPAN

            -
              class: Dist::Zilla::Plugin::FinderCode
              name: '@Author::PERLANCAR/MetaProvides::Package/AUTOVIV/:InstallModulesPM'
              version: '6.028'
          include_underscores: 0
        Dist::Zilla::Role::MetaProvider::Provider:
          $Dist::Zilla::Role::MetaProvider::Provider::VERSION: '2.002004'
          inherit_missing: '1'
          inherit_version: '1'
          meta_noindex: '1'
        Dist::Zilla::Role::ModuleMetadata:
          Module::Metadata: '1.000037'
          version: '0.006'
      name: '@Author::PERLANCAR/MetaProvides::Package'
      version: '2.004003'
    -
      class: Dist::Zilla::Plugin::PERLANCAR::Authority
      name: '@Author::PERLANCAR/PERLANCAR::Authority'
      version: '0.001'
    -
      class: Dist::Zilla::Plugin::OurDate
      name: '@Author::PERLANCAR/OurDate'

README  view on Meta::CPAN

VERSION
    This document describes version 0.001 of Acme::CPANModules::MIMETypes
    (from Perl distribution Acme-CPANModules-MIMETypes), released on
    2023-06-30.

DESCRIPTION
    All recipes are categorized by tasks, then by most recommended module.

    1. Finding out filename extensions for a certain MIME type

    1a. With File::MimeInfo (uses system's type database):

     use File::MimeInfo qw(extensions);
     $ext  = extensions("image/jpeg"); # => "jpeg"
     @exts = extensions("image/jpeg"); # => ("jpeg", "jpe", "jpg")

    1b. With MIME::Types (comes with its own type database):

     use MIME::Types;
     my $mt = MIME::Types->new->type("image/jpeg") or die "Unknown MIME type";
     my @exts = $m->extensions; # => ("jpeg", "jpg", "jpe", "jfif", "jfif-tbnl")

    1c. With Media::Type::Simple (can uses system's "/etc/mime.types"):

     use Media::Type::Simple;
     $ext  = ext_from_type("image/jpeg"); # => "jpeg"
     @exts = ext_from_type("image/jpeg"); # => ("jpeg", "jpg", "jpe", "jfif")

README  view on Meta::CPAN


     use MIME::Types;
     my $mt = MIME::Types->new->mimeTypeOf("gif") or die "Unknown MIME type";
     say "$mt" ;# => "image/gif"

    2b. With Media::Type::Simple:

     use Media::Type::Simple;
     $type = type_from_ext("jpg"); # => "image/jpeg"

    2c. With MIME::Type::FileName (comes with its own type database, last
    updated 2012):

     use MIME::Type::FileName;
     my $mimetype = MIME::Type::FileName::guess ("my-file.xls") or die "Unknown MIME type";

    3. Guessing MIME type of a file based on its extension

    3a. With File::MimeInfo:

     use File::MimeInfo;
     my $mime_type = mimetype('test.png') or die "Unknown MIME type";

    3b. With LWP::MediaTypes (comes with its own type database):

     use LWP::MediaTypes;
     my $type = LWP::MediaTypes::guess_media_type("file.xls") or die "Unknown MIME type";

    4. Guessing MIME type of a file based on its content

    4a. Using File::MimeInfo::Magic (same interface as File::MimeInfo):

     use File::MimeInfo::Magic;
 

lib/Acme/CPANModules/MIMETypes.pm  view on Meta::CPAN

our $AUTHORITY = 'cpan:PERLANCAR'; # AUTHORITY
our $DATE = '2023-06-30'; # DATE
our $DIST = 'Acme-CPANModules-MIMETypes'; # DIST
our $VERSION = '0.001'; # VERSION

my $text = <<'_';
All recipes are categorized by tasks, then by most recommended module.

**1. Finding out filename extensions for a certain MIME type**

**1a. With <pm:File::MimeInfo> (uses system's type database):**

    use File::MimeInfo qw(extensions);
    $ext  = extensions("image/jpeg"); # => "jpeg"
    @exts = extensions("image/jpeg"); # => ("jpeg", "jpe", "jpg")

**1b. With <pm:MIME::Types> (comes with its own type database):**

    use MIME::Types;
    my $mt = MIME::Types->new->type("image/jpeg") or die "Unknown MIME type";
    my @exts = $m->extensions; # => ("jpeg", "jpg", "jpe", "jfif", "jfif-tbnl")

**1c. With <pm:Media::Type::Simple> (can uses system's C</etc/mime.types>):**

    use Media::Type::Simple;
    $ext  = ext_from_type("image/jpeg"); # => "jpeg"
    @exts = ext_from_type("image/jpeg"); # => ("jpeg", "jpg", "jpe", "jfif")

lib/Acme/CPANModules/MIMETypes.pm  view on Meta::CPAN


    use MIME::Types;
    my $mt = MIME::Types->new->mimeTypeOf("gif") or die "Unknown MIME type";
    say "$mt" ;# => "image/gif"

**2b. With Media::Type::Simple:**

    use Media::Type::Simple;
    $type = type_from_ext("jpg"); # => "image/jpeg"

**2c. With <pm:MIME::Type::FileName> (comes with its own type database, last updated 2012):**

    use MIME::Type::FileName;
    my $mimetype = MIME::Type::FileName::guess ("my-file.xls") or die "Unknown MIME type";


**3. Guessing MIME type of a file based on its extension**

**3a. With File::MimeInfo:**

    use File::MimeInfo;
    my $mime_type = mimetype('test.png') or die "Unknown MIME type";

**3b. With <pm:LWP::MediaTypes> (comes with its own type database):**

    use LWP::MediaTypes;
    my $type = LWP::MediaTypes::guess_media_type("file.xls") or die "Unknown MIME type";


**4. Guessing MIME type of a file based on its content**

**4a. Using <pm:File::MimeInfo::Magic> (same interface as File::MimeInfo):**

    use File::MimeInfo::Magic;

lib/Acme/CPANModules/MIMETypes.pm  view on Meta::CPAN

=head1 VERSION

This document describes version 0.001 of Acme::CPANModules::MIMETypes (from Perl distribution Acme-CPANModules-MIMETypes), released on 2023-06-30.

=head1 DESCRIPTION

All recipes are categorized by tasks, then by most recommended module.

B<1. Finding out filename extensions for a certain MIME type>

B<< 1a. With L<File::MimeInfo> (uses system's type database): >>

 use File::MimeInfo qw(extensions);
 $ext  = extensions("image/jpeg"); # => "jpeg"
 @exts = extensions("image/jpeg"); # => ("jpeg", "jpe", "jpg")

B<< 1b. With L<MIME::Types> (comes with its own type database): >>

 use MIME::Types;
 my $mt = MIME::Types->new->type("image/jpeg") or die "Unknown MIME type";
 my @exts = $m->extensions; # => ("jpeg", "jpg", "jpe", "jfif", "jfif-tbnl")

B<< 1c. With L<Media::Type::Simple> (can uses system's C</etc/mime.types>): >>

 use Media::Type::Simple;
 $ext  = ext_from_type("image/jpeg"); # => "jpeg"
 @exts = ext_from_type("image/jpeg"); # => ("jpeg", "jpg", "jpe", "jfif")

lib/Acme/CPANModules/MIMETypes.pm  view on Meta::CPAN


 use MIME::Types;
 my $mt = MIME::Types->new->mimeTypeOf("gif") or die "Unknown MIME type";
 say "$mt" ;# => "image/gif"

B<2b. With Media::Type::Simple:>

 use Media::Type::Simple;
 $type = type_from_ext("jpg"); # => "image/jpeg"

B<< 2c. With L<MIME::Type::FileName> (comes with its own type database, last updated 2012): >>

 use MIME::Type::FileName;
 my $mimetype = MIME::Type::FileName::guess ("my-file.xls") or die "Unknown MIME type";

B<3. Guessing MIME type of a file based on its extension>

B<3a. With File::MimeInfo:>

 use File::MimeInfo;
 my $mime_type = mimetype('test.png') or die "Unknown MIME type";

B<< 3b. With L<LWP::MediaTypes> (comes with its own type database): >>

 use LWP::MediaTypes;
 my $type = LWP::MediaTypes::guess_media_type("file.xls") or die "Unknown MIME type";

B<4. Guessing MIME type of a file based on its content>

B<< 4a. Using L<File::MimeInfo::Magic> (same interface as File::MimeInfo): >>

 use File::MimeInfo::Magic;
 



( run in 1.688 second using v1.01-cache-2.11-cpan-c966e8aa7e8 )