Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(3150)

Issue 303100043: Java SpoofChecker (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
7 years, 9 months ago by sffc
Modified:
7 years, 5 months ago
Reviewers:
andy.heninger
CC:
markdavis
Base URL:
svn+icussh://source.icu-project.org/repos/icu/icu4j/trunk/
Visibility:
Public.

Description

icu4j version of SpoofChecker

Patch Set 1 #

Patch Set 2 : Second version of WSC algorithm. #

Patch Set 3 : Version of my code with public API that generates whole-script confusables. #

Patch Set 4 : Version of code with IdentifierInfo2 #

Patch Set 5 : Version of code with MA tables removed #

Patch Set 6 : More small API changes #

Patch Set 7 : Code cleanup #

Patch Set 8 : Removing the big TR39_CHARS UnicodeSet #

Total comments: 69

Patch Set 9 : Updating with Andy's first round of feedback. #

Total comments: 16

Patch Set 10 : Re-writing documentation. #

Patch Set 11 : Small documentation updates. #

Patch Set 12 : Merging trunk #

Patch Set 13 : Resolving merge conflicts #

Patch Set 14 : Adding hashCode function to fix ant check error. Committed to svn. #

Patch Set 15 : Adding additional test coverage. #

Patch Set 16 : Adding coverage for copy constructor test. #

Patch Set 17 : Replying to some Andy comments that I missed. #

Total comments: 8

Patch Set 18 : Minor revisions to SpoofChecker comments and documentation. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+11 lines, -7 lines) Patch
M main/classes/core/src/com/ibm/icu/text/SpoofChecker.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 4 chunks +11 lines, -7 lines 0 comments Download

Messages

Total messages: 29
sffc
Second version of WSC algorithm.
7 years, 9 months ago (2016-07-26 02:20:05 UTC) #1
sffc
Version of my code with public API that generates whole-script confusables.
7 years, 8 months ago (2016-07-29 18:41:18 UTC) #2
sffc
Version of code with IdentifierInfo2
7 years, 8 months ago (2016-08-10 18:41:00 UTC) #3
sffc
Version of code with MA tables removed
7 years, 8 months ago (2016-08-11 01:14:42 UTC) #4
sffc
More small API changes
7 years, 8 months ago (2016-08-12 00:24:00 UTC) #5
sffc
Code cleanup
7 years, 8 months ago (2016-08-19 03:10:32 UTC) #6
sffc
Removing the big TR39_CHARS UnicodeSet
7 years, 8 months ago (2016-08-19 03:14:07 UTC) #7
sffc
Hi Andy, Here are my SpoofChecker changes in Java. I will send the C++ code ...
7 years, 8 months ago (2016-08-19 03:51:42 UTC) #8
andy.heninger
First batch of comments. I haven't looked at the tests yet. https://codereview.appspot.com/303100043/diff/140001/main/classes/core/src/com/ibm/icu/text/SpoofChecker.java File main/classes/core/src/com/ibm/icu/text/SpoofChecker.java (left): ...
7 years, 7 months ago (2016-08-26 01:06:45 UTC) #9
andy.heninger
https://codereview.appspot.com/303100043/diff/140001/main/tests/core/src/com/ibm/icu/dev/test/text/SpoofCheckerTest.java File main/tests/core/src/com/ibm/icu/dev/test/text/SpoofCheckerTest.java (right): https://codereview.appspot.com/303100043/diff/140001/main/tests/core/src/com/ibm/icu/dev/test/text/SpoofCheckerTest.java#newcode93 main/tests/core/src/com/ibm/icu/dev/test/text/SpoofCheckerTest.java:93: rsc = new SpoofChecker.Builder().setData(confusables).build(); On 2016/08/19 03:51:42, sffc wrote: ...
7 years, 7 months ago (2016-08-26 18:19:02 UTC) #10
sffc
Updating with Andy's first round of feedback.
7 years, 7 months ago (2016-08-27 01:10:45 UTC) #11
sffc
Updating with Andy's first round of feedback.
7 years, 7 months ago (2016-08-27 01:11:09 UTC) #12
sffc
Updating with Andy's first round of feedback.
7 years, 7 months ago (2016-08-27 01:13:17 UTC) #13
sffc
https://codereview.appspot.com/303100043/diff/140001/main/classes/core/src/com/ibm/icu/text/SpoofChecker.java File main/classes/core/src/com/ibm/icu/text/SpoofChecker.java (left): https://codereview.appspot.com/303100043/diff/140001/main/classes/core/src/com/ibm/icu/text/SpoofChecker.java#oldcode2 main/classes/core/src/com/ibm/icu/text/SpoofChecker.java:2: // License & terms of use: http://www.unicode.org/copyright.html#License On 2016/08/26 ...
7 years, 7 months ago (2016-08-27 01:19:25 UTC) #14
andy.heninger
https://codereview.appspot.com/303100043/diff/200001/main/classes/core/src/com/ibm/icu/text/SpoofChecker.java File main/classes/core/src/com/ibm/icu/text/SpoofChecker.java (right): https://codereview.appspot.com/303100043/diff/200001/main/classes/core/src/com/ibm/icu/text/SpoofChecker.java#newcode187 main/classes/core/src/com/ibm/icu/text/SpoofChecker.java:187: * This is the default restriction level as of ...
7 years, 7 months ago (2016-09-09 23:52:49 UTC) #15
sffc
Re-writing documentation.
7 years, 7 months ago (2016-09-10 02:38:00 UTC) #16
sffc
Small documentation updates.
7 years, 7 months ago (2016-09-13 04:31:58 UTC) #17
sffc
Updated documentation in the Java version. Anything else I need to do?
7 years, 7 months ago (2016-09-13 04:35:59 UTC) #18
sffc
Merging trunk
7 years, 7 months ago (2016-09-13 20:17:56 UTC) #19
sffc
Resolving merge conflicts
7 years, 7 months ago (2016-09-13 20:46:19 UTC) #20
sffc
Resolving merge conflicts
7 years, 7 months ago (2016-09-13 20:47:25 UTC) #21
sffc
Adding hashCode function to fix ant check error. Committed to svn.
7 years, 7 months ago (2016-09-13 22:46:39 UTC) #22
sffc
Adding additional test coverage.
7 years, 7 months ago (2016-09-14 22:04:04 UTC) #23
sffc
Adding coverage for copy constructor test.
7 years, 7 months ago (2016-09-15 21:16:46 UTC) #24
sffc
Replying to some Andy comments that I missed.
7 years, 7 months ago (2016-09-22 01:34:25 UTC) #25
sffc
I noticed some comments you made in the files that went undetected. I fixed them ...
7 years, 7 months ago (2016-09-22 01:36:03 UTC) #26
andy.heninger
https://codereview.appspot.com/303100043/diff/140001/main/classes/core/src/com/ibm/icu/text/SpoofChecker.java File main/classes/core/src/com/ibm/icu/text/SpoofChecker.java (right): https://codereview.appspot.com/303100043/diff/140001/main/classes/core/src/com/ibm/icu/text/SpoofChecker.java#newcode527 main/classes/core/src/com/ibm/icu/text/SpoofChecker.java:527: * To whitelist specific checks and disable all others, ...
7 years, 7 months ago (2016-09-23 18:09:43 UTC) #27
sffc
Minor revisions to SpoofChecker comments and documentation.
7 years, 7 months ago (2016-09-23 21:42:43 UTC) #28
sffc
7 years, 7 months ago (2016-09-23 21:46:52 UTC) #29
Updated and committed as r39344 in Java and r39345 in C++.

https://codereview.appspot.com/303100043/diff/370001/main/classes/core/src/co...
File main/classes/core/src/com/ibm/icu/text/SpoofChecker.java (right):

https://codereview.appspot.com/303100043/diff/370001/main/classes/core/src/co...
main/classes/core/src/com/ibm/icu/text/SpoofChecker.java:84: * be thought of as
a "hash code". {@link SpoofChecker#getSkeleton} computes the skeleton for a
particular string, so
On 2016/09/23 18:09:43, andy.heninger wrote:
> It's not quite like a hash because two non-confusable strings must never map
to
> the same skeleton. No Collisions.

Done.

https://codereview.appspot.com/303100043/diff/370001/main/classes/core/src/co...
main/classes/core/src/com/ibm/icu/text/SpoofChecker.java:769: *
*****************************************************************************
Internal classes for
On 2016/09/23 18:09:43, andy.heninger wrote:
> Formatting went wrong

Done.

https://codereview.appspot.com/303100043/diff/370001/main/classes/core/src/co...
main/classes/core/src/com/ibm/icu/text/SpoofChecker.java:1005: *
*****************************************************************************
Internal classes for
On 2016/09/23 18:09:43, andy.heninger wrote:
> Formatting trouble again.

Done.

https://codereview.appspot.com/303100043/diff/370001/main/classes/core/src/co...
main/classes/core/src/com/ibm/icu/text/SpoofChecker.java:1030: private static
class SPUStringComparator implements Comparator<SPUString> {
On 2016/09/23 18:09:43, andy.heninger wrote:
> With the change to the way lengths are kept, there's no longer a need to sort
> the strings by length. Probably too big of a change to do at this point in the
> release, though. Would need to do for C++ also.

Good point.  I'll add a TODO to the code.  Should there be a ticket, too?
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b