Releases: felldo/JEmoji
Releases · felldo/JEmoji
v1.5.2
v1.5.1
v1.5.0
Features
- Added support for emoji keywords
Emoji#getKeywords(EmojiLanguage)
- Added methods to get emojis mapped to their group/subgroup
- Added a new class
EmojiLoader
for method separation that are associated to loading/initializing emojis. Currently there are 2 helper methodsloadAllEmojiDescriptions
andloadAllEmojiKeywords
to load all language files. - Removed Jackson dependency. Now this library is dependency-less
Breaking
- Renamed
EmojiDescriptionLanguage
enum toEmojiLanguage
v1.4.1
v1.4.0
Features
- Emojis are now auto generated and are directly accessible through a constant. You can now use
Emojis.THUMBS_UP
to directly get an emoji instance - Added emoji description translations from the CLDR
Emoji#getDescription(EmojiDescriptionLanguage)
Breaking
- Renamed EmojiSubGroup
ARTS_CRAFTS
toARTS_AND_CRAFTS
,LIGHT_VIDEO
toLIGHT_AND_VIDEO
,SKY_WEATHER
toSKY_AND_WEATHER
Dependencies
- Updated Jackson to
2.16.1
v1.3.4
v1.3.3
Features
- Emojis are now
Comparable
(compared by their codepoints length and if equal, by their emoji unicode value) #18 - Allowed
build.gradle.kts
to ignore signing of jars (Jitpack support) - Added
EmojiManager#extractEmojisInOrderWithIndex
(thanks to @freya022 for index idea + implementation #22) - The whole library is now annotated non nullable by default to improve usability for other languages like Kotlin #43
Improvements
- Significantly improved the performance of
getBy*Alias
methods (thanks to @freya022 #17) - Improved the performance of comparing emojis (should only have an effect on initialization of the
EmojiManager
) (thanks to @freya022 for hinting out a faster alternative to get the codepoints count #18) - Improved the performance of getting codepoints from a string (thanks to @freya022 #21)
Dependencies
- Updated Jackson to
2.16.0
Performance overview
Benchmark | Mode | Cnt | Old Score | Score** | Error | Units |
---|---|---|---|---|---|---|
getByAlias -> :+1: |
avgt | 10 | No data | 59,509 | ± 0,608 | ns/op |
getByAlias -> nope |
avgt | 10 | No data | 72,004 | ± 0,546 | ns/op |
containsEmoji | avgt | 10 | 4,820 | 1,403 | ± 0,004 | ms/op |
extractEmojisInOrder | avgt | 10 | 4,481 | 1,382 | ± 0,013 | ms/op |
extractEmojisInOrderOnlyEmojisLengthDescending | avgt | 10 | 8,967 | 6,013 | ± 0,022 | ms/op |
extractEmojisInOrderOnlyEmojisRandomOrder | avgt | 10 | 9,364 | 6,614 | ± 0,045 | ms/op |
extractEmojisInOrderWithIndex | avgt | 10 | No data | 1,814 | ± 0,002 | ms/op |
removeAllEmojis | avgt | 10 | 7,813 | 2,264 | ± 0,370 | ms/op |
replaceAllEmojis | avgt | 10 | 7,213 | 2,517 | ± 0,020 | ms/op |
replaceAllEmojisFunction | avgt | 10 | No data | 2,502 | ± 0,023 | ms/op |