Skip to content

feat(emoji): upgrade to Unicode 17.0 standard#17

Merged
Nikoro merged 1 commit intomainfrom
develop
Nov 26, 2025
Merged

feat(emoji): upgrade to Unicode 17.0 standard#17
Nikoro merged 1 commit intomainfrom
develop

Conversation

@Nikoro
Copy link
Owner

@Nikoro Nikoro commented Nov 26, 2025

  • Update emoji database to Unicode 17.0 with 5,000+ emojis
  • Add new emoji getter methods for improved accessibility
  • Upgrade Flutter examples to latest stable version
  • Migrate Android build configuration to Kotlin DSL
  • Update SDK constraints to ^3.4.0 for all packages
  • Refactor emoji data structure and version tracking
  • Enhance test coverage for new emoji getters
  • Update documentation to reflect Unicode 17.0 support

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR upgrades the emoji database from Unicode 16.0 to 17.0, adding support for 183 new emojis (total now 5,225). The upgrade includes comprehensive updates to the codebase, test suite, and Flutter example applications.

  • Updates emoji database with Unicode 17.0 standard (5,042 → 5,225 emojis)
  • Adds new API methods isV17_0 and v17_0 for accessing Unicode 17.0 emojis
  • Updates Flutter examples to latest stable Flutter SDK with modern build configurations
  • Migrates Android build system from Groovy to Kotlin DSL
  • Updates SDK constraints to ^3.4.0 and dependency versions across all packages

Reviewed changes

Copilot reviewed 61 out of 68 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
lib/src/regex.dart Updated emoji regex pattern to Unicode 17.0
lib/src/emojis/version.dart Added Version.v17_0 enum value
lib/src/emojis/emojis.dart Added v17_0 getter method
lib/src/emojis/emoji/emoji_getters.dart Added isV17_0 boolean getter
test/src/regex_test.dart Updated tests to verify Unicode 17.0 emoji matching
test/src/emojis/version_test.dart Updated version count from 14 to 15
test/src/emojis/emojis_test.dart Updated all emoji counts for new Unicode version
test/src/emojis/emoji/emoji_getters_test.dart Added comprehensive tests for isV17_0 getter
test/_tools/test_emojis.dart Added valuesAsync method for fetching official Unicode data; added new emoji entries
pubspec.yaml Updated test, flutter_lints, and added http dependency
flutter_examples/**/pubspec.yaml Updated SDK constraints and flutter_lints to 6.0.0
flutter_examples/**/android/* Migrated from Groovy to Kotlin DSL; updated Gradle and build tools
flutter_examples/**/ios/* Updated deployment targets to iOS 13.0; added development team IDs
flutter_examples/**/macos/* Updated deployment targets to macOS 10.15; added secure restorable state
flutter_examples/**/linux/* Refactored CMake build structure; improved GTK initialization
flutter_examples/**/web/index.html Changed meta tag from apple-mobile-web-app-capable to mobile-web-app-capable
README.md Updated Unicode version references from 16.0 to 17.0
analysis_options.yaml Removed package_api_docs rule

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


environment:
sdk: '>=3.3.3 <4.0.0'
sdk: ^3.4.0
Copy link

Copilot AI Nov 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The SDK constraint uses caret syntax ^3.4.0 which means >=3.4.0 <4.0.0. However, this is non-standard for SDK constraints in Dart. The recommended format is to use explicit range syntax: sdk: '>=3.4.0 <4.0.0' for clarity and consistency with Dart conventions.

Copilot uses AI. Check for mistakes.

environment:
sdk: '>=3.3.3 <4.0.0'
sdk: ^3.4.0
Copy link

Copilot AI Nov 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The SDK constraint uses caret syntax ^3.4.0 which means >=3.4.0 <4.0.0. However, this is non-standard for SDK constraints in Dart. The recommended format is to use explicit range syntax: sdk: '>=3.4.0 <4.0.0' for clarity and consistency with Dart conventions.

Suggested change
sdk: ^3.4.0
sdk: '>=3.4.0 <4.0.0'

Copilot uses AI. Check for mistakes.

environment:
sdk: '>=2.19.6 <4.0.0'
sdk: ^3.4.0
Copy link

Copilot AI Nov 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The SDK constraint uses caret syntax ^3.4.0 which means >=3.4.0 <4.0.0. However, this is non-standard for SDK constraints in Dart. The recommended format is to use explicit range syntax: sdk: '>=3.4.0 <4.0.0' for clarity and consistency with Dart conventions.

Suggested change
sdk: ^3.4.0
sdk: '>=3.4.0 <4.0.0'

Copilot uses AI. Check for mistakes.
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
DEVELOPMENT_TEAM = Y5T33B6749;
Copy link

Copilot AI Nov 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A hardcoded development team ID Y5T33B6749 has been added to the project configuration. This team ID should not be committed to version control as it's specific to a developer's Apple Developer account. This should either be removed or managed through local configuration files that are excluded from version control (e.g., using xcconfig files that are gitignored).

Suggested change
DEVELOPMENT_TEAM = Y5T33B6749;

Copilot uses AI. Check for mistakes.
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
DEVELOPMENT_TEAM = Y5T33B6749;
Copy link

Copilot AI Nov 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A hardcoded development team ID Y5T33B6749 has been added to the project configuration. This team ID should not be committed to version control as it's specific to a developer's Apple Developer account. This should either be removed or managed through local configuration files that are excluded from version control (e.g., using xcconfig files that are gitignored).

Copilot uses AI. Check for mistakes.
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
DEVELOPMENT_TEAM = Y5T33B6749;
Copy link

Copilot AI Nov 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A hardcoded development team ID Y5T33B6749 has been added to the project configuration. This team ID should not be committed to version control as it's specific to a developer's Apple Developer account. This should either be removed or managed through local configuration files that are excluded from version control (e.g., using xcconfig files that are gitignored).

Copilot uses AI. Check for mistakes.
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
DEVELOPMENT_TEAM = Y5T33B6749;
Copy link

Copilot AI Nov 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A hardcoded development team ID Y5T33B6749 has been added to the project configuration. This team ID should not be committed to version control as it's specific to a developer's Apple Developer account. This should either be removed or managed through local configuration files that are excluded from version control (e.g., using xcconfig files that are gitignored).

Copilot uses AI. Check for mistakes.
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
DEVELOPMENT_TEAM = Y5T33B6749;
Copy link

Copilot AI Nov 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A hardcoded development team ID Y5T33B6749 has been added to the project configuration. This team ID should not be committed to version control as it's specific to a developer's Apple Developer account. This should either be removed or managed through local configuration files that are excluded from version control (e.g., using xcconfig files that are gitignored).

Copilot uses AI. Check for mistakes.
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
DEVELOPMENT_TEAM = Y5T33B6749;
Copy link

Copilot AI Nov 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A hardcoded development team ID Y5T33B6749 has been added to the project configuration. This team ID should not be committed to version control as it's specific to a developer's Apple Developer account. This should either be removed or managed through local configuration files that are excluded from version control (e.g., using xcconfig files that are gitignored).

Copilot uses AI. Check for mistakes.
- Update emoji database to Unicode 17.0 with 5,000+ emojis
- Add new emoji getter methods for improved accessibility
- Upgrade Flutter examples to latest stable version
- Migrate Android build configuration to Kotlin DSL
- Update SDK constraints to ^3.4.0 for all packages
- Refactor emoji data structure and version tracking
- Enhance test coverage for new emoji getters
- Update documentation to reflect Unicode 17.0 support
@Nikoro Nikoro merged commit 003c561 into main Nov 26, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants