---
abstract: 'Determine Web browser, version, and platform from an HTTP user agent string'
author:
- 'Lee Semel <lee@semel.net>'
- 'Peter Walsham'
- 'Olaf Alders <olaf@wundercounter.com> (current maintainer)'
build_requires:
ExtUtils::MakeMaker: '0'
File::Spec: '0'
FindBin: '0'
Hash::Merge: '0'
JSON::PP: '4.04'
List::Util: '1.49'
Path::Tiny: '0'
Test::Differences: '0'
Test::More: '0.96'
Test::NoWarnings: '0'
Test::Warnings: '0'
configure_requires:
ExtUtils::MakeMaker: '0'
dynamic_config: 0
generated_by: 'Dist::Zilla version 6.024, CPAN::Meta::Converter version 2.150010'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: '1.4'
name: HTTP-BrowserDetect
no_index:
directory:
- examples
- t
- xt
requires:
perl: '5.006'
strict: '0'
warnings: '0'
resources:
bugtracker: https://github.com/oalders/http-browserdetect/issues
homepage: https://github.com/oalders/http-browserdetect
repository: https://github.com/oalders/http-browserdetect.git
version: '3.35'
x_Dist_Zilla:
perl:
version: '5.030002'
plugins:
-
class: Dist::Zilla::Plugin::PromptIfStale
config:
Dist::Zilla::Plugin::PromptIfStale:
check_all_plugins: 0
check_all_prereqs: 0
modules:
- Dist::Zilla::PluginBundle::Author::OALDERS
phase: build
run_under_travis: 0
skip: []
name: '@Author::OALDERS/stale modules, build'
version: '0.057'
-
class: Dist::Zilla::Plugin::PromptIfStale
config:
Dist::Zilla::Plugin::PromptIfStale:
check_all_plugins: 1
check_all_prereqs: 1
modules: []
phase: release
run_under_travis: 0
skip: []
name: '@Author::OALDERS/stale modules, release'
version: '0.057'
-
class: Dist::Zilla::Plugin::OALDERS::TidyAll
name: '@Author::OALDERS/OALDERS::TidyAll'
version: '0.000029'
-
class: Dist::Zilla::Plugin::AutoPrereqs
name: '@Author::OALDERS/AutoPrereqs'
version: '6.024'
-
class: Dist::Zilla::Plugin::CheckChangesHasContent
name: '@Author::OALDERS/CheckChangesHasContent'
version: '0.011'
-
class: Dist::Zilla::Plugin::MakeMaker
config:
Dist::Zilla::Role::TestRunner:
default_jobs: '1'
name: '@Author::OALDERS/MakeMaker'
version: '6.024'
-
class: Dist::Zilla::Plugin::CPANFile
name: '@Author::OALDERS/CPANFile'
version: '6.024'
-
class: Dist::Zilla::Plugin::ContributorsFile
name: '@Author::OALDERS/ContributorsFile'
version: 0.3.0
-
class: Dist::Zilla::Plugin::MetaJSON
name: '@Author::OALDERS/MetaJSON'
version: '6.024'
-
class: Dist::Zilla::Plugin::MetaYAML
name: '@Author::OALDERS/MetaYAML'
version: '6.024'
-
class: Dist::Zilla::Plugin::Manifest
name: '@Author::OALDERS/Manifest'
version: '6.024'
-
class: Dist::Zilla::Plugin::MetaNoIndex
name: '@Author::OALDERS/MetaNoIndex'
version: '6.024'
-
class: Dist::Zilla::Plugin::MetaConfig
name: '@Author::OALDERS/MetaConfig'
version: '6.024'
-
class: Dist::Zilla::Plugin::MetaResources
name: '@Author::OALDERS/MetaResources'
version: '6.024'
-
class: Dist::Zilla::Plugin::License
name: '@Author::OALDERS/License'
version: '6.024'
-
class: Dist::Zilla::Plugin::InstallGuide
config:
Dist::Zilla::Role::ModuleMetadata:
Module::Metadata: '1.000037'
version: '0.006'
name: '@Author::OALDERS/InstallGuide'
version: '1.200014'
-
class: Dist::Zilla::Plugin::Prereqs
config:
Dist::Zilla::Plugin::Prereqs:
phase: develop
type: requires
name: '@Author::OALDERS/Modules for use with tidyall'
version: '6.024'
-
class: Dist::Zilla::Plugin::ExecDir
name: '@Author::OALDERS/ExecDir'
version: '6.024'
-
class: Dist::Zilla::Plugin::Test::PodSpelling
config:
Dist::Zilla::Plugin::Test::PodSpelling:
directories:
- bin
- lib
spell_cmd: ''
stopwords:
- Alders
- "Alders'"
- Alexey
- AnnoCPAN
- Aran
- Atsushi
- Bilodeau
- CGI
- Cebrin
- Deltac
- Doye
- Findlay
- Firebird
- Florian
- Fontani
- Hao
- Heiko
- Iceweasel
- Ihnen
- KHTML
- Kato
- Kimball
- Kollar
- Kurihara
- Latypoff
- Maros
- McGregor
- Moise
- Oatis
- Pelzer
- Perlover
- Purkis
- Rask
- RealPlayer
- Rifkin
- Ritter
- Smidsrod
- Sorcinelli
- Stadie
- Surikov
- Thom
- UserAgent
- Uwe
- Voelker
- WAP
- WebKit
- WinNT
- Yoshiki
- adm
- ahrefs
- altavista
- aol
- apache
- applecoremedia
- askjeeves
- audrey
- avantgo
- baidu
- ben
- bingbot
- browsex
- cho
- dalvik
- ds
- dsi
- elinks
- facebook
- firefox
- galeon
- getright
- golib
- google
- googleadsbot
- googleadsense
- googlebot
- googlebotimage
- googlebotnews
- googlebotvideo
- googlefavicon
- googlemobile
- headlesschrome
- hengst
- icab
- ie
- indy
- infoseek
- iopener
- ios
- ipad
- iphone
- ipod
- ipsagent
- khtml
- kindlefire
- konqueror
- linkchecker
- linkexchange
- lotusnotes
- lycos
- macosx
- macppc
- malware
- merlynkline
- mj
- mozilla
- msn
- msnmobile
- msoffice
- nav
- navgold
- neoplanet
- netfront
- netscape
- nutch
- obigo
- phplib
- polaris
- ps
- psp
- pubsub
- puf
- realplayer
- rubylib
- samsung
- seamonkey
- specialarchiver
- staroffice
- ucbrowser
- userAgent
- wap
- webkit
- webos
- webtv
- wget
- winnt
- winphone
- yandex
- yandexbot
- yandeximages
- yeahoffline
wordlist: Pod::Wordlist
name: '@Author::OALDERS/Test::PodSpelling'
version: '2.007005'
-
class: Dist::Zilla::Plugin::MojibakeTests
name: '@Author::OALDERS/MojibakeTests'
version: '0.8'
-
class: Dist::Zilla::Plugin::PodSyntaxTests
name: '@Author::OALDERS/PodSyntaxTests'
version: '6.024'
-
class: Dist::Zilla::Plugin::Test::CPAN::Changes
config:
Dist::Zilla::Plugin::Test::CPAN::Changes:
changelog: Changes
name: '@Author::OALDERS/Test::CPAN::Changes'
version: '0.012'
-
class: Dist::Zilla::Plugin::Test::EOL
config:
Dist::Zilla::Plugin::Test::EOL:
filename: xt/author/eol.t
finder:
- ':ExecFiles'
- ':InstallModules'
- ':TestFiles'
trailing_whitespace: 1
name: '@Author::OALDERS/Test::EOL'
version: '0.19'
-
class: Dist::Zilla::Plugin::Test::Portability
config:
Dist::Zilla::Plugin::Test::Portability:
options: ''
name: '@Author::OALDERS/Test::Portability'
version: '2.001000'
-
class: Dist::Zilla::Plugin::TestRelease
name: '@Author::OALDERS/TestRelease'
version: '6.024'
-
class: Dist::Zilla::Plugin::Test::ReportPrereqs
name: '@Author::OALDERS/Test::ReportPrereqs'
version: '0.028'
-
class: Dist::Zilla::Plugin::Test::Synopsis
name: '@Author::OALDERS/Test::Synopsis'
version: '2.000007'
-
class: Dist::Zilla::Plugin::Test::TidyAll
name: '@Author::OALDERS/Test::TidyAll'
version: '0.04'
-
class: Dist::Zilla::Plugin::Test::Version
name: '@Author::OALDERS/Test::Version'
version: '1.09'
-
class: Dist::Zilla::Plugin::RunExtraTests
config:
Dist::Zilla::Role::TestRunner:
default_jobs: '1'
name: '@Author::OALDERS/RunExtraTests'
version: '0.029'
-
class: Dist::Zilla::Plugin::PodWeaver
config:
Dist::Zilla::Plugin::PodWeaver:
finder:
- ':InstallModules'
- ':ExecFiles'
plugins:
-
class: Pod::Weaver::Plugin::EnsurePod5
name: '@CorePrep/EnsurePod5'
version: '4.015'
-
class: Pod::Weaver::Plugin::H1Nester
name: '@CorePrep/H1Nester'
version: '4.015'
-
class: Pod::Weaver::Plugin::SingleEncoding
name: '@Default/SingleEncoding'
version: '4.015'
-
class: Pod::Weaver::Section::Name
name: '@Default/Name'
version: '4.015'
-
class: Pod::Weaver::Section::Version
name: '@Default/Version'
version: '4.015'
-
class: Pod::Weaver::Section::Region
name: '@Default/prelude'
version: '4.015'
-
class: Pod::Weaver::Section::Generic
name: SYNOPSIS
version: '4.015'
-
class: Pod::Weaver::Section::Generic
name: DESCRIPTION
version: '4.015'
-
class: Pod::Weaver::Section::Generic
name: OVERVIEW
version: '4.015'
-
class: Pod::Weaver::Section::Collect
name: ATTRIBUTES
version: '4.015'
-
class: Pod::Weaver::Section::Collect
name: METHODS
version: '4.015'
-
class: Pod::Weaver::Section::Collect
name: FUNCTIONS
version: '4.015'
-
class: Pod::Weaver::Section::Leftovers
name: '@Default/Leftovers'
version: '4.015'
-
class: Pod::Weaver::Section::Region
name: '@Default/postlude'
version: '4.015'
-
class: Pod::Weaver::Section::Authors
name: '@Default/Authors'
version: '4.015'
-
class: Pod::Weaver::Section::Legal
name: '@Default/Legal'
version: '4.015'
name: '@Author::OALDERS/PodWeaver'
version: '4.009'
-
class: Dist::Zilla::Plugin::PruneCruft
name: '@Author::OALDERS/PruneCruft'
version: '6.024'
-
class: Dist::Zilla::Plugin::CopyFilesFromBuild
name: '@Author::OALDERS/CopyFilesFromBuild'
version: '0.170880'
-
class: Dist::Zilla::Plugin::GithubMeta
name: '@Author::OALDERS/GithubMeta'
version: '0.58'
-
class: Dist::Zilla::Plugin::Git::GatherDir
config:
Dist::Zilla::Plugin::GatherDir:
exclude_filename:
- Install
- LICENSE
- META.json
- Makefile.PL
- README.md
- cpanfile
exclude_match: []
follow_symlinks: 0
include_dotfiles: 0
prefix: ''
prune_directory: []
root: .
Dist::Zilla::Plugin::Git::GatherDir:
include_untracked: 0
name: '@Author::OALDERS/Git::GatherDir'
version: '2.048'
-
class: Dist::Zilla::Plugin::CopyFilesFromRelease
config:
Dist::Zilla::Plugin::CopyFilesFromRelease:
filename:
- Install
match: []
name: '@Author::OALDERS/CopyFilesFromRelease'
version: '0.007'
-
class: Dist::Zilla::Plugin::Git::Check
config:
Dist::Zilla::Plugin::Git::Check:
untracked_files: die
Dist::Zilla::Role::Git::DirtyFiles:
allow_dirty:
- Changes
- Install
- LICENSE
- META.json
- Makefile.PL
- README.md
- cpanfile
- dist.ini
allow_dirty_match: []
changelog: Changes
Dist::Zilla::Role::Git::Repo:
git_version: 2.33.1
repo_root: .
name: '@Author::OALDERS/Git::Check'
version: '2.048'
-
class: Dist::Zilla::Plugin::Git::Contributors
config:
Dist::Zilla::Plugin::Git::Contributors:
git_version: 2.33.1
include_authors: 0
include_releaser: 1
order_by: name
paths: []
name: '@Author::OALDERS/Git::Contributors'
version: '0.036'
-
class: Dist::Zilla::Plugin::ReadmeAnyFromPod
config:
Dist::Zilla::Role::FileWatcher:
version: '0.006'
name: '@Author::OALDERS/ReadmeMdInBuild'
version: '0.163250'
-
class: Dist::Zilla::Plugin::StaticInstall
config:
Dist::Zilla::Plugin::StaticInstall:
dry_run: 0
mode: on
name: '@Author::OALDERS/StaticInstall'
version: '0.012'
-
class: Dist::Zilla::Plugin::ShareDir
name: '@Author::OALDERS/ShareDir'
version: '6.024'
-
class: Dist::Zilla::Plugin::CheckIssues
name: '@Author::OALDERS/CheckIssues'
version: '0.011'
-
class: Dist::Zilla::Plugin::ConfirmRelease
name: '@Author::OALDERS/ConfirmRelease'
version: '6.024'
-
class: Dist::Zilla::Plugin::UploadToCPAN
name: '@Author::OALDERS/UploadToCPAN'
version: '6.024'
-
class: Dist::Zilla::Plugin::Prereqs
config:
Dist::Zilla::Plugin::Prereqs:
phase: develop
type: recommends
name: '@Author::OALDERS/@Git::VersionManager/pluginbundle version'
version: '6.024'
-
class: Dist::Zilla::Plugin::RewriteVersion::Transitional
config:
Dist::Zilla::Plugin::RewriteVersion:
add_tarball_name: 0
finders:
- ':ExecFiles'
- ':InstallModules'
global: 0
skip_version_provider: 0
Dist::Zilla::Plugin::RewriteVersion::Transitional: {}
name: '@Author::OALDERS/@Git::VersionManager/RewriteVersion::Transitional'
version: '0.009'
-
class: Dist::Zilla::Plugin::MetaProvides::Update
name: '@Author::OALDERS/@Git::VersionManager/MetaProvides::Update'
version: '0.007'
-
class: Dist::Zilla::Plugin::CopyFilesFromRelease
config:
Dist::Zilla::Plugin::CopyFilesFromRelease:
filename:
- Changes
match: []
name: '@Author::OALDERS/@Git::VersionManager/CopyFilesFromRelease'
version: '0.007'
-
class: Dist::Zilla::Plugin::Git::Commit
config:
Dist::Zilla::Plugin::Git::Commit:
add_files_in: []
commit_msg: v%V%n%n%c
signoff: 0
Dist::Zilla::Role::Git::DirtyFiles:
allow_dirty:
- Changes
- Install
- LICENSE
- META.json
- Makefile.PL
- README.md
- cpanfile
- dist.ini
allow_dirty_match: []
changelog: Changes
Dist::Zilla::Role::Git::Repo:
git_version: 2.33.1
repo_root: .
Dist::Zilla::Role::Git::StringFormatter:
time_zone: local
name: '@Author::OALDERS/@Git::VersionManager/release snapshot'
version: '2.048'
-
class: Dist::Zilla::Plugin::Git::Tag
config:
Dist::Zilla::Plugin::Git::Tag:
branch: ~
changelog: Changes
signed: 0
tag: v3.35
tag_format: v%V
tag_message: v%V
Dist::Zilla::Role::Git::Repo:
git_version: 2.33.1
repo_root: .
Dist::Zilla::Role::Git::StringFormatter:
time_zone: local
name: '@Author::OALDERS/@Git::VersionManager/Git::Tag'
version: '2.048'
-
class: Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional
config:
Dist::Zilla::Plugin::BumpVersionAfterRelease:
finders:
- ':ExecFiles'
- ':InstallModules'
global: 0
munge_makefile_pl: 1
Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional: {}
name: '@Author::OALDERS/@Git::VersionManager/BumpVersionAfterRelease::Transitional'
version: '0.009'
-
class: Dist::Zilla::Plugin::NextRelease
name: '@Author::OALDERS/@Git::VersionManager/NextRelease'
version: '6.024'
-
class: Dist::Zilla::Plugin::Git::Commit
config:
Dist::Zilla::Plugin::Git::Commit:
add_files_in: []
commit_msg: 'increment $VERSION after %v release'
signoff: 0
Dist::Zilla::Role::Git::DirtyFiles:
allow_dirty:
- Build.PL
- Changes
- Makefile.PL
allow_dirty_match:
- (?^:^lib/.*\.pm$)
changelog: Changes
Dist::Zilla::Role::Git::Repo:
git_version: 2.33.1
repo_root: .
Dist::Zilla::Role::Git::StringFormatter:
time_zone: local
name: '@Author::OALDERS/@Git::VersionManager/post-release commit'
version: '2.048'
-
class: Dist::Zilla::Plugin::Git::Push
config:
Dist::Zilla::Plugin::Git::Push:
push_to:
- origin
remotes_must_exist: 1
Dist::Zilla::Role::Git::Repo:
git_version: 2.33.1
repo_root: .
name: '@Author::OALDERS/Git::Push'
version: '2.048'
-
class: Dist::Zilla::Plugin::Prereqs
config:
Dist::Zilla::Plugin::Prereqs:
phase: test
type: requires
name: TestRequires
version: '6.024'
-
class: Dist::Zilla::Plugin::Prereqs
config:
Dist::Zilla::Plugin::Prereqs:
phase: develop
type: requires
name: DevelopRequires
version: '6.024'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':InstallModules'
version: '6.024'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':IncModules'
version: '6.024'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':TestFiles'
version: '6.024'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':ExtraTestFiles'
version: '6.024'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':ExecFiles'
version: '6.024'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':PerlExecFiles'
version: '6.024'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':ShareFiles'
version: '6.024'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':MainModule'
version: '6.024'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':AllFiles'
version: '6.024'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':NoFiles'
version: '6.024'
zilla:
class: Dist::Zilla::Dist::Builder
config:
is_trial: 0
version: '6.024'
x_contributors:
- 'Alexandr Ciornii <alexchorny@gmail.com>'
- 'Andrew Moise <andrew.moise@gmail.com>'
- 'Aran Deltac <bluefeet@gmail.com>'
- 'ben hengst <notbenh@cpan.org>'
- 'cho45 <cho45@lowreal.net>'
- 'Daniel Stadie <daniel.stadie@online.de>'
- 'David Ihnen <davidihnen@gmail.com>'
- 'Douglas Christopher Wilson <doug@somethingdoug.com>'
- 'Graham Barr <gbarr@pobox.com>'
- 'gregor herrmann <gregor+github@comodo.priv.at>'
- 'Gregory Oschwald <goschwald@maxmind.com>'
- 'Hao Wu <hwu@intellisurvey.com>'
- 'Ilya Rassadin <elcamlost@gmail.com>'
- 'James Raspass <jraspass@gmail.com>'
- 'James Waters <james@jcwaters.co.uk>'
- 'joatis <joatis3@gmail.com>'
- 'Jon Jensen <jon@endpoint.com>'
- 'Konstantin A. Pustovalov <konstantin.pustovalov@quantumsoft.ru>'
- 'ktat <ktat.is@gmail.com>'
- 'lsaunders <lsaunders@dev05.backbone.i5invest.com>'
- 'Mahdi Zarei <ymgsmz@gmail.com>'
- 'Marco Fontani <MFONTANI@cpan.org>'
- 'Maros Kollar <maros@k-1.com>'
- 'Mohammad S Anwar <mohammad.anwar@yahoo.com>'
- 'motxx <motohiko.ave@gmail.com>'
- 'Nicolas Doye <nic@worldofnic.org>'
- 'Olaf Alders <olaf.alders@gmail.com>'
- 'Olaf Alders <olaf@wundersolutions.com>'
- 'Olivier Bilodeau <olivier@bottomlesspit.org>'
- 'Paul Findlay <paul@findlay.net.nz>'
- 'Perlover <perlover@perlover.com>'
- 'Petr <petr@kle.cz>'
- 'Ramanan Balakrishnan <ramanan90@gmail.com>'
- 'reneeb <info@perl-services.de>'
- 'Robin Smidsrød <robin@smidsrod.no>'
- 'Ronald J Kimball <rkimball@pangeamedia.com>'
- 'Surikov Alexey <surikov@alexey-pc.kiteventures.local>'
- 'Thom Blake <thom@odonnellpdc.com>'
- 'Uwe <uwe@uwevoelker.de>'
- 'vti <viacheslav.t@gmail.com>'
- 'Yasuharu Iida <yasuharu.iida@fout.jp>'
- 'yeahoffline <frank.gasser@gmail.com>'
- 'Zak B. Elep <zakame@zakame.net>'
x_generated_by_perl: v5.30.2
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
x_spdx_expression: 'Artistic-1.0-Perl OR GPL-1.0-or-later'
x_static_install: 1