When printing addresses, the default to_s was being used, which resulted in an unfriendly output such as: <#<Ppl::Entity::EmailAddress:0x00000001ffbd28>> This commit changes this to be something more user friendly, like firstname.lastname@example.org This is especially relevant when using the scrapper to import addresses, as the previous output was something like: Add "Hugo Osvaldo Barrera #<Ppl::Entity::EmailAddress:0x00000001ffbd28>>" to your address book [Y/n]? Which was not at all useful, to say the least.
This deals with issue #46 by forcing the encoding of the string on the offending line to UTF-8.
This fixes issue #45 by improving the error message displayed when a vcf file contains invalid vCard data. The name of the offending file is now included in the error message.
With thanks to @ajford for the excellent feature request, version 2.3.0 brings a new command: ppl grep. This command leverages the extremely high speed search git grep repository search in order to provide near-instant search results. $ ppl grep smith john.vcf:EMAIL:email@example.com
Thanks again to @pigmonkey for issue #32, reporting some unhelpful destructive behaviour in ppl scrape. In this version, some additional checking has been added to that command to prevent it from overwriting existing contacts. In the event that the scraped contact ID happens to match that of an existing contact, ppl scrape will now notice this collision and append numbers to the new ID until it no longer matches any existing contact’s IDs.
With thanks to @pigmonkey for raising this as issue #42 on GitHub, version 2.1.0 brings increased control over the names of contacts. This is intended to improve interoperability with other address book software, including the Android system’s contact list. Short, lower case contact IDs are great for a CLI program, but on a phone, you probably want to see full names. This update provides full access to all the bits & pieces of vCard’s N (name) field: * Family name(s) * Middle name(s) * Given name(s) * Prefix * Suffix See the documentation of ppl name for more details on how to use this new functionality. Also included is some slightly different behaviour under the hood of ppl add. This command now attempts to “have a guess” at the structure of the name of a newly-added contact. It’ll treat the first word of the full name as the contact’s given name, and the rest of the string as their family name. This is a shamefully anglocentric approach to name parsing, but at least it’s a start.