use strict;
use warnings;
use base qw/Exporter/;
-our @EXPORT_OK = qw(mid_clean id_compress mid2path mid_mime mid_escape MID_ESC
+our @EXPORT_OK = qw(mid_clean id_compress mid2path mid_escape MID_ESC
mids references mids_for_index $MID_EXTRACT);
use URI::Escape qw(uri_escape_utf8);
use Digest::SHA qw/sha1_hex/;
require PublicInbox::Address;
use constant {
- MID_MAX => 40, # SHA-1 hex length # TODO: get rid of this
+ ID_MAX => 40, # SHA-1 hex length for HTML id anchors
MAX_MID_SIZE => 244, # max term size (Xapian limitation) - length('Q')
};
sub id_compress {
my ($id, $force) = @_;
- if ($force || $id =~ /[^a-zA-Z0-9_\-]/ || length($id) > MID_MAX) {
+ if ($force || $id =~ /[^a-zA-Z0-9_\-]/ || length($id) > ID_MAX) {
utf8::encode($id);
return sha1_hex($id);
}
"$x2/$x38";
}
-# Only for v1 code paths:
-sub mid_mime ($) { mids($_[0]->header_obj)->[0] }
-
# only intended for Message-ID and X-Alt-Message-ID
sub extract_mids {
my @mids;
}
# RFC3986, section 3.3:
-sub MID_ESC () { '^A-Za-z0-9\-\._~!\$\&\';\(\)\*\+,;=:@' }
+sub MID_ESC () { '^A-Za-z0-9\-\._~!\$\&\'\(\)\*\+,;=:@' }
sub mid_escape ($) { uri_escape_utf8($_[0], MID_ESC) }
1;