feat!: 2.0.0 Modularization, Melos Support & Localization Refactor #167
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🚀 Overview
This major release (2.0.0) modularizes the survey_kit package to reduce the core package size and allow for more flexible dependency management. It also introduces melos for monorepo management and significantly improves the localization architecture.
💥 Breaking Changes
Modularization:
AudioContent and related features have been moved to package:survey_kit_audio.
VideoContent and related features have been moved to package:survey_kit_video.
LottieContent and related features have been moved to package:survey_kit_lottie.
Localization:
Removed the localizations parameter from SurveyKit.
Migrated internal strings to .arb files using flutter_localizations for better maintainability and extensibility.
✨ Features
Monorepo: Implemented melos workspace for efficient management of multiple packages (survey_kit, example, etc.).
Content Registry: Updated internal registry to support dynamic deserialization of content steps from external packages.
🐛 Fixes
Fixed DateTime timezone handling in CustomDateTimeConverter.
Added missing JSON serialization methods for TimeResult.
Updated test infrastructure to use deterministic Step IDs.
🧹 Chore
Updated internal dependencies (including json_annotation).
Updated Android Gradle Plugin and Gradle versions for better compatibility.
📚 Migration Guide
Please refer to
MIGRATION.md
for detailed instructions on how to upgrade your existing project to 2.0.0.