From 363068ce094755e4a28782cd5c4c9065e0299278 Mon Sep 17 00:00:00 2001 From: Shovel Maman Date: Tue, 14 Jan 2025 08:54:19 +0100 Subject: [PATCH 1/2] Builder fix --- CHANGELOG.md | 4 ++++ lib/builder.dart | 3 ++- pubspec.yaml | 3 ++- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0ebd035..c53f5fa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## 4.2.3 + +- builder fix + ## 4.2.2 - update dependencies diff --git a/lib/builder.dart b/lib/builder.dart index 2b4ceef..a30bf01 100644 --- a/lib/builder.dart +++ b/lib/builder.dart @@ -4,6 +4,7 @@ import 'package:build/build.dart'; import 'package:dart_style/dart_style.dart'; import 'package:glob/glob.dart'; import 'package:i18n/src/i18n_impl.dart'; +import 'package:pub_semver/pub_semver.dart'; import 'package:yaml/yaml.dart'; Builder yamlBasedBuilder(BuilderOptions options) => YamlBasedBuilder(); @@ -79,7 +80,7 @@ class YamlBasedBuilder implements Builder { var dartContent = generateDartContentFromYaml(objectName, contents); try { - dartContent = DartFormatter().format(dartContent); + dartContent = DartFormatter(languageVersion: Version(3, 6, 0)).format(dartContent); } on FormatterException { log.warning( 'Could not format generated output, it might contain errors.', diff --git a/pubspec.yaml b/pubspec.yaml index 8fa57df..3c4e0ed 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: i18n description: Simple i18n solution for dart and flutter. Uses code generation to generate translations as dart classes. Efficient and works with autocomplete! -version: 4.2.2 +version: 4.2.3 homepage: https://github.com/MohiuddinM/i18n environment: @@ -13,6 +13,7 @@ dependencies: yaml: ^3.0.0 quick_log: ^5.0.0 glob: ^2.0.0 + pub_semver: ^2.0.0 dev_dependencies: lints: ^5.0.0 From 730981389bfc4e2bd1cb52bf51eff407b4217a03 Mon Sep 17 00:00:00 2001 From: Shovel Maman Date: Tue, 14 Jan 2025 09:08:36 +0100 Subject: [PATCH 2/2] Fix --- lib/builder.dart | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/builder.dart b/lib/builder.dart index a30bf01..776dc25 100644 --- a/lib/builder.dart +++ b/lib/builder.dart @@ -1,3 +1,4 @@ +import 'dart:io'; import 'dart:math'; import 'package:build/build.dart'; @@ -80,7 +81,11 @@ class YamlBasedBuilder implements Builder { var dartContent = generateDartContentFromYaml(objectName, contents); try { - dartContent = DartFormatter(languageVersion: Version(3, 6, 0)).format(dartContent); + final versionRegexp = RegExp(r"\d+\.\d+\.\d+"); + final match = versionRegexp.firstMatch(Platform.version)!; + dartContent = DartFormatter( + languageVersion: Version.parse(Platform.version.substring(match.start, match.end)) + ).format(dartContent); } on FormatterException { log.warning( 'Could not format generated output, it might contain errors.',