burak / CPAN-Parse-HTTP-UserAgent
Parser for the User Agent string
Clone this repository (size: 159.9 KB): HTTPS / SSH
$ hg clone http://bitbucket.org/burak/cpan-parse-http-useragent/
| commit 80: | 0e586525adf0 |
| parent 79: | fe0bd2687392 |
| branch: | default |
internal clean up
- View burak's profile
-
burak's public repos »
- CPAN-Padre-Plugin-HG
- CPAN-Net-Bitbucket
- CPAN-GD-SecurityImage
- CPAN-Lingua-TR-Numbers
- CPAN-Sys-Info-Driver-Windows
- CPAN-Task-Lingua-Any-Numbers
- CPAN-Time-Elapsed
- CPAN-Win32-ASP-CGI
- CPAN-Scalar-Util-Reftype
- CPAN-Parse-HTTP-UserAgent
- CPAN-Acme-CPANAuthors-Turkish
- CPAN-tools
- CPAN-Device-CableModem-Motorola-SB4200
- CPAN-Text-Template-Simple
- CPAN-CGI-Auth-Basic
- CPAN-GD-Thumbnail
- CPAN-Lingua-Any-Numbers
- CPAN-MP3-M3U-Parser
- CPAN-PHP-Session-DBI
- CPAN-Sys-Info
- CPAN-Sys-Info-Base
- CPAN-Sys-Info-Driver-BSD
- CPAN-Sys-Info-Driver-Linux
- CPAN-Sys-Info-Driver-Unknown
- CPAN-Test-Sys-Info
- Send message
7 months ago
Changed (Δ316 bytes):
raw changeset »
Changes (3 lines added, 0 lines removed)
lib/Parse/HTTP/UserAgent.pm (4 lines added, 3 lines removed)
lib/Parse/HTTP/UserAgent/Base/Parsers.pm (1 lines added, 1 lines removed)
lib/Parse/HTTP/UserAgent/Constants.pm (9 lines added, 0 lines removed)
| … | … | @@ -2,6 +2,9 @@ Revision history for Perl extension Pars |
2 |
2 |
|
3 |
3 |
Time zone is UTC+2. |
4 |
4 |
|
5 |
0.16 Wed Sep 2 06:32:43 2009 |
|
6 |
=> Internal cleanup. |
|
7 |
||
5 |
8 |
0.15 Sun Aug 30 03:09:49 2009 |
6 |
9 |
=> Opera 10 beta support. |
7 |
10 |
=> Work around for version::vpp bug which was causing regressions under |
Up to file-list lib/Parse/HTTP/UserAgent.pm:
| … | … | @@ -2,7 +2,7 @@ package Parse::HTTP::UserAgent; |
2 |
2 |
use strict; |
3 |
3 |
use vars qw( $VERSION ); |
4 |
4 |
|
5 |
$VERSION = '0.1 |
|
5 |
$VERSION = '0.16'; |
|
6 |
6 |
|
7 |
7 |
use base qw( |
8 |
8 |
Parse::HTTP::UserAgent::Base::IS |
| … | … | @@ -15,8 +15,8 @@ use overload '""', => 'name', |
15 |
15 |
fallback => 1, |
16 |
16 |
; |
17 |
17 |
use version; |
18 |
use Carp qw( croak ); |
|
18 |
19 |
use Parse::HTTP::UserAgent::Constants qw(:all); |
19 |
use Carp qw( croak ); |
|
20 |
20 |
|
21 |
21 |
BEGIN { |
22 |
22 |
constant->import( DEBUG => 0 ) if not defined &DEBUG; |
| … | … | @@ -142,7 +142,8 @@ sub _post_parse { |
142 |
142 |
$self->[UA_EXTRAS] = [ @buf ]; |
143 |
143 |
|
144 |
144 |
if ( $self->[UA_TOOLKIT] ) { |
145 |
push @{ $self->[UA_TOOLKIT] }, |
|
145 |
push @{ $self->[UA_TOOLKIT] }, |
|
146 |
$self->_numify( $self->[UA_TOOLKIT][TK_ORIGINAL_VERSION] ); |
|
146 |
147 |
} |
147 |
148 |
|
148 |
149 |
if( $self->[UA_MOZILLA] ) { |
Up to file-list lib/Parse/HTTP/UserAgent/Base/Parsers.pm:
| … | … | @@ -280,7 +280,7 @@ sub _parse_gecko { |
280 |
280 |
return 1 ; |
281 |
281 |
} |
282 |
282 |
|
283 |
if ( $self->[UA_TOOLKIT] && $self->[UA_TOOLKIT][ |
|
283 |
if ( $self->[UA_TOOLKIT] && $self->[UA_TOOLKIT][TK_NAME] eq 'Gecko' ) { |
|
284 |
284 |
($self->[UA_NAME], $self->[UA_VERSION_RAW]) = split RE_SLASH, $moz; |
285 |
285 |
if ( $self->[UA_NAME] && $self->[UA_VERSION_RAW] ) { |
286 |
286 |
$self->[UA_PARSER] = 'mozilla_family:gecko'; |
Up to file-list lib/Parse/HTTP/UserAgent/Constants.pm:
| … | … | @@ -30,6 +30,10 @@ use constant IS_MAXTHON => ++$O |
30 |
30 |
use constant IS_EXTENDED => ++$OID; |
31 |
31 |
use constant MAXID => $OID; |
32 |
32 |
|
33 |
use constant TK_NAME => 0; |
|
34 |
use constant TK_ORIGINAL_VERSION => 1; |
|
35 |
use constant TK_VERSION => 2; |
|
36 |
||
33 |
37 |
use constant RE_FIREFOX_NAMES => qr{Firefox|Iceweasel|Firebird|Phoenix }xms; |
34 |
38 |
use constant RE_DOTNET => qr{ \A [.]NET \s+ CLR \s+ (.+?) \z }xms; |
35 |
39 |
use constant RE_WINDOWS_OS => qr{ \A Win(dows|NT|[0-9]+)? }xmsi; |
| … | … | @@ -120,6 +124,11 @@ BEGIN { |
120 |
124 |
list => [qw( |
121 |
125 |
LIST_ROBOTS |
122 |
126 |
)], |
127 |
tk => [qw( |
|
128 |
TK_NAME |
|
129 |
TK_ORIGINAL_VERSION |
|
130 |
TK_VERSION |
|
131 |
)], |
|
123 |
132 |
); |
124 |
133 |
|
125 |
134 |
@EXPORT_OK = map { @{ $_ } } values %EXPORT_TAGS; |
