user/dev discussion of public-inbox itself
 help / color / mirror / code / Atom feed
Search results ordered by [date|relevance]  view[summary|nested|Atom feed]
thread overview below | download mbox.gz: |
* [PATCH 0/2] hval: handle wide characters properly
@ 2020-01-19  9:40  6% Eric Wong
  2020-01-19  9:40  7% ` [PATCH 2/2] hval: from_attr: move to unit test Eric Wong
  0 siblings, 1 reply; 2+ results
From: Eric Wong @ 2020-01-19  9:40 UTC (permalink / raw)
  To: meta

We don't see wide characters frequently in filenames and rarely
generate attributes with them for diffstat links, so this wasn't
noticed until now.

Fwiw, I'm still confused by Perl Unicode APIs despite reading
and rereading perluni* manpages over the years :x, so there
could still be bugs :x

Eric Wong (2):
  hval: to_attr: support wide characters
  hval: from_attr: move to unit test

 lib/PublicInbox/Hval.pm       | 16 +++-------------
 t/hval.t                      | 15 ++++++++++++++-
 t/solve/0001-simple-mod.patch |  2 ++
 t/solver_git.t                | 11 ++++++++++-
 4 files changed, 29 insertions(+), 15 deletions(-)

^ permalink raw reply	[relevance 6%]

* [PATCH 2/2] hval: from_attr: move to unit test
  2020-01-19  9:40  6% [PATCH 0/2] hval: handle wide characters properly Eric Wong
@ 2020-01-19  9:40  7% ` Eric Wong
  0 siblings, 0 replies; 2+ results
From: Eric Wong @ 2020-01-19  9:40 UTC (permalink / raw)
  To: meta

We don't call from_attr anywhere outside of tests, so don't
bloat normal processes with it.
---
 lib/PublicInbox/Hval.pm | 15 +--------------
 t/hval.t                | 15 ++++++++++++++-
 2 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/lib/PublicInbox/Hval.pm b/lib/PublicInbox/Hval.pm
index 39256ee0..2589c519 100644
--- a/lib/PublicInbox/Hval.pm
+++ b/lib/PublicInbox/Hval.pm
@@ -10,7 +10,7 @@ use Encode qw(find_encoding);
 use PublicInbox::MID qw/mid_clean mid_escape/;
 use base qw/Exporter/;
 our @EXPORT_OK = qw/ascii_html obfuscate_addrs to_filename src_escape
-		to_attr from_attr prurl/;
+		to_attr prurl/;
 my $enc_ascii = find_encoding('us-ascii');
 
 # safe-ish acceptable filename pattern for portability
@@ -148,17 +148,4 @@ sub to_attr ($) {
 	$first . $str;
 }
 
-# reverse the result of to_attr
-sub from_attr ($) {
-	my ($str) = @_;
-	my $first = '';
-	if ($str =~ s/\AZ([a-f0-9]{2})//ms) {
-		$first = chr(hex($1));
-	}
-	$str =~ s!::([a-f0-9]{2})!chr(hex($1))!egms;
-	$str =~ tr!:!/!;
-	utf8::decode($str);
-	$first . $str;
-}
-
 1;
diff --git a/t/hval.t b/t/hval.t
index f93d6be6..53f52f07 100644
--- a/t/hval.t
+++ b/t/hval.t
@@ -3,7 +3,20 @@
 use strict;
 use warnings;
 use Test::More;
-use_ok 'PublicInbox::Hval', qw(from_attr to_attr);
+use_ok 'PublicInbox::Hval', qw(to_attr);
+
+# reverse the result of to_attr
+sub from_attr ($) {
+	my ($str) = @_;
+	my $first = '';
+	if ($str =~ s/\AZ([a-f0-9]{2})//ms) {
+		$first = chr(hex($1));
+	}
+	$str =~ s!::([a-f0-9]{2})!chr(hex($1))!egms;
+	$str =~ tr!:!/!;
+	utf8::decode($str);
+	$first . $str;
+}
 
 my $ibx = {
 	-no_obfuscate_re => qr/(?:example\.com)\z/i,

^ permalink raw reply related	[relevance 7%]

Results 1-2 of 2 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2020-01-19  9:40  6% [PATCH 0/2] hval: handle wide characters properly Eric Wong
2020-01-19  9:40  7% ` [PATCH 2/2] hval: from_attr: move to unit test Eric Wong

Code repositories for project(s) associated with this public inbox

	https://80x24.org/public-inbox.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).