tidyEmoji 0.6.0

The catalogue is now Unicode’s own, current to Emoji 18.0, and the package says exactly what a glyph is and what it could not measure. Until 0.5.0 tidyEmoji detected against the table inside the emoji package, which has stayed at Emoji 16.0 through two Unicode releases, so the 182 emoji added in 17.0 and 18.0 were not detected at all. The catalogue is now Unicode’s emoji-test.txt, bundled with the package and rebuilt by data-raw/crosswalks.R when Unicode ships; emoji still supplies the shortcodes, the keywords and the detection regex. On top of it come ten new verbs, two detection repairs, a presentation argument on every verb that reads text, and association and polarisation measures on three shipped verbs.

Counts move, in both directions. A corpus scored under 0.5.0 and again under 0.6.0 can report more emoji, because the 17.0 and 18.0 additions are now detected, and it can report fewer, because two kinds of emoji material are no longer counted as emoji:

emoji_summary() counts the first two kinds, so a diff between the two releases can be explained from the output, and emoji_provenance() reports the catalogue version and the date of its data file. The corpus behind the introduction vignette holds none of the three, so every figure the vignettes quote for it is unchanged.

The catalogue

Two detection repairs

presentation = "any"

Rates ship with their denominators

New verbs

Measures on shipped verbs

Lifecycle

Documentation

Infrastructure

tidyEmoji 0.5.0

No new verbs. emoji_context() returns its answers a great deal faster, and emoji_collocations(), which answered a non-Latin-script corpus wrongly in a non-UTF-8 locale, now answers it the same in every locale. A source reading before submission then found eleven smaller defects, each a wrong, order-dependent or crashing answer on an input the documentation already covered: a user-supplied lexicon, a one-row input, a count past integer range, where = "final" in the incongruity profile, trailing Unicode whitespace under policy = "strip", and the C-locale order under one dplyr option. They are listed below, each with a test. The rest of the release is documentation and the infrastructure that checks it.

The bundled crosswalks track Unicode emoji 16.0, via emoji 16.0.0. Re-generating them from data-raw/crosswalks.R against that release reproduces the shipped data exactly, so the catalogue is current.

Improvements and fixes

That is three bugs of one shape, after tolower() in the fold and iswspace() in the whitespace class, so a test now scans the package for every locale-dependent regex class rather than waiting for a fourth.

Verified, no change needed

Documentation

Development infrastructure

None of this changes the package, but all of it was promised in an earlier release and kept slipping.

tidyEmoji 0.4.0

This release delivers the first wave of the feature roadmap filed as issue #5: the items that are cheap, research-grounded, and need no new dataset and no new dependency. Most of them are recombinations of machinery the package already had – the Novak lexicon’s annotation counts, the reference table’s Unicode version column, the grapheme-aware locator – read out in a way no R package exposed before.

New features

Interpretation risk (roadmap theme B)

Miller et al. (2016) found that readers of the same rendering disagree about whether an emoji is positive, neutral or negative roughly a quarter of the time. The bundled Emoji Sentiment Ranking keeps the raw negative/neutral/positive annotation counts behind its collapsed score, so that disagreement was already inside the package as an empirical distribution. It is now a number.

Context (roadmap theme C)

Time (roadmap theme H)

Text-emoji mismatch (roadmap theme E)

Functional type (roadmap theme K)

Language-model plumbing (roadmap theme J)

Provenance (roadmap theme M)

Improvements and fixes

This section is long because the release was audited exhaustively rather than spot-checked, and both kinds of finding are recorded: changes you can observe, and verifications that confirmed existing behaviour was already right. The second kind is kept deliberately – knowing that a figure was re-derived from the data, or that a formula was checked against an independent implementation, is worth as much to the next maintainer as knowing what moved.

Entries whose first sentence is bold are the ones where something was actually wrong and got fixed – in the package, in its documentation, or in a test that was passing for the wrong reason. There are one hundred and eighteen of them, and reading just those leads gives the release without the verification detail. Not all one hundred and eighteen changed observable behaviour: several record a test that could not have failed, or a figure the documentation quoted incorrectly, which are worth the same prominence because both meant something was unverified.

tidyEmoji 0.3.0

New features

Improvements and fixes

tidyEmoji 0.2.1

Improvements and fixes

tidyEmoji 0.2.0

tidyEmoji is now positioned as a general toolkit for emoji in any text column (social-media posts, reviews, chat logs, survey responses, …), not just tweets.

New features

Improvements and fixes

Breaking changes

tidyEmoji 0.1.1

tidyEmoji 0.1.0