keybase / keybase/client

New iOS device provisioning rejects default iOS apostrophe

Open
#8,970 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
9.2k
Forks
1.3k
Avg merge
12h 58m
Merged PRs (30d)
56

Description

When attempting to provision my device as "Brian‘s iPhone 6", using the default iOS apostrophe, the name was rejected for failing to match the device name regex. After some thinking, I tried "Brian's iPhone 6", that his, holding down the apostrophe key and selecting the right-most option, a vertical tick mark. This matched the regex and I was able to continue.

I don't think the right answer here is to begin allowing multiple kinds of apostrophes, as that's just asking for trouble when the goal is uniquely human-identifiable names. What I'm wondering is if it is possible to map or otherwise interpret the default iOS character ‘ as the acceptable character '.

I've noticed a few other apostrophe-related issues that seem to stem from OSes trying to be clever about which apostrophe gets printed based on the context (occurring before or after a space, mid-word, etc.) which seems to then run afoul of a regex which only accepts one kind of apostrophe.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Begin by locating the device-name regex and the iOS provisioning path; the issue names no file or test. Reproduce the two apostrophe variants described, and consider the work complete when the default iOS apostrophe is handled consistently without broadly accepting unrelated name characters.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios
Domain
mobile-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.