- Update to Unicode 16.0
typing_extensions
dependency not required on Python 3.9 and higher #303
- Read JSON files in binary mode to avoid UnicodeDecodeError #305
- Use JSON files to store the database of emoji
- Load a language into emoji.EMOJI_DATA with emoji.config.load_language("zh")
typing-extensions
requires at least version4.7.0
#297
- Move type annotations inline
- Use
functools.lru_cache
for looking up emoji by name withget_emoji_by_name()
- Move internal functions
get_emoji_unicode_dict()
,get_aliases_unicode_dict()
,_EMOJI_UNICODE
and_ALIASES_UNICODE
totestutils
- Add type hints to tests
- Remove obsolete dev dependency
coveralls
- Add missing stubs for purely_emoji
- Update to Unicode v15.1
- Fix slow import when debugging in Python 3.12 #280
- Added Arabic and Turkish translations
- Added Russian translation
- Update translations to unicode release-43-1
- Include "derived annotations"-translations from unicode CLDR
- Fix translations for emoji that have multiple forms with/out \uFE0F (Fixes Partially missing languages #272 )
- Remove multiple underscore __, ___, ____ and - from translations
- Extract aliases from cheat sheet and youtube
- Fix extracting translations from emojiterra
- Update EMOJI_DATA with new aliases and translations
- Added new function purely_emoji() | Check if a string contains only emojis
- Fix Malformed zero width joiner (\u200d) causes IndexError
- Added support for Multi-person skintones
- Removed support for Python 2, 3.4, 3.5
- The logic from demojize() is moved to two separate private function tokenize() and filter_tokens() in a new file emoji/tokenizer.py
- A new public function analyze() is available and that supports the multi-person skintones
- Added Japanese and Korean
- Added Indonesian and Simplified Chinese
- Bug fixing
- Added support for Unicode Version 15
- Added more translations for existing languages: (similar to the Turkish Language)
- Added Readme on how to add a language
- Fix 2.0.0: sphinx warnings reference target not found
- Added Farsi support
- Added Trove classifiers for Python 3.10 and 3.11
- Removed the old dicts EMOJI_UNICODE_, UNICODE_EMOJI_
- Removed unused language=None parameters
- Removed use_alias parameter
- Removed the get_regexp method
- Removed emoji_lis
- Removed distinct_emoji_lis
- Made the list of languages public: emoji.LANGUAGES = ['en','es','pt','it','fr','de']
- Updated translations to release-41 (no changes compared to release-40)
- Generate documentation for the public functions from the docstrings with Sphinx
- Added some more examples to the README: e.g. how to replace/remove emojis
- Total count of emojis: 4702
- Added
emoji_list()
anddistinct_emoji_list()
- Added deprecation warnings for several functions and variables that will be removed in version 2.0.0.
If you don't want to see these warnings, you can stay with 1.6.x. For example, in pip/requirements.txt you can pin to 1.6.x with
emoji~=1.6.3
.
- Added support for counting unique emojis
- Improve performance of demojize()
- Added more tests
- Added warning when someone uses any other language than 'en' with use_aliases=True in emojize()
- Allow multiple aliases
- Restored aliases from 1.5.0
- Fix Unicode of some emoji in the language files
- is_emoji function added
- Added dict of dict with emoji data include emoji versions and statuses
- emoji.version(string) method added
- Included 'variant' in the dict of dicts
- is_emoji function added
- Fix Unicode of some emoji in the language files
- Emojis of English version updated to the Emoji Charts v14.0
- Current count of emojis - 3633
- Fix matching of non-ASCII emoji names on Python 2
- Delimiter for German time naming changed from ":" to "."
- Fix some French emoji names not being matched
- Drop seemingly accidentally added colons from German emoji names
- Added support for German naming of emojis
- Added support for French naming of emojis
- Added replace_emoji
- Emojis of English version updated to the Emoji Charts v13.1
- Added all emoji modifiers
- Current count of emojis - 3521
- Emoji extractor refactored
- Added support for Italian naming of emojis
- Added Python 3.8 and 3.9 as supported versions
- Bug fixing
- Added support for Spanish naming of emojis
- Added support for Portuguese naming of emojis
- Emoji packs split by language to different modules
- Use codecs.open() instead of open() when processing readme in setup.py - #2, #5
- Restored default functionality - #6
- Removed
emoji.decode()
- #10 - Added
use_aliases
toemoji.emojize()
to enable the GitHub aliases and others - #8
- Added ~400 codes to bring the emoji list up to date
- emojize() regex now matches &.ô’Åéãíç
- Unittests for API and to validate emoji formatting and parsing
- decode() function to lookup emoji by their Unicode code