From b9d36190caff41764a2d724f605c2f89d3cfc4f8 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Fri, 15 Nov 2024 15:55:50 +0300 Subject: [PATCH 01/95] fix(feed): image constrains --- .../presentation/pages/blog_post_create_screen.dart | 13 ++++++++----- .../widgets/bottom_navigation_bar_widget.dart | 2 +- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/lib/features/blog_post_create/presentation/pages/blog_post_create_screen.dart b/lib/features/blog_post_create/presentation/pages/blog_post_create_screen.dart index d76b7bd4..74a83a25 100644 --- a/lib/features/blog_post_create/presentation/pages/blog_post_create_screen.dart +++ b/lib/features/blog_post_create/presentation/pages/blog_post_create_screen.dart @@ -168,11 +168,14 @@ class _BlogPostCreateScreenState extends State { width: shrinkImage ? 52 : MediaQuery.of(context).size.width - 32, curve: Curves.easeIn, duration: Duration(milliseconds: 150), - child: ClipRRect( - borderRadius: BorderRadius.circular(16), - child: Image( - image: FileImage( - File(state.image!.path), + child: ConstrainedBox( + constraints: BoxConstraints( + maxWidth: MediaQuery.of(context).size.width - 32, + ), + child: ClipRRect( + borderRadius: BorderRadius.circular(16), + child: Image( + image: FileImage(File(state.image!.path)), ), ), ), diff --git a/lib/features/bottom_navigation_bar/presentation/widgets/bottom_navigation_bar_widget.dart b/lib/features/bottom_navigation_bar/presentation/widgets/bottom_navigation_bar_widget.dart index ce8a8bca..787fe3c4 100644 --- a/lib/features/bottom_navigation_bar/presentation/widgets/bottom_navigation_bar_widget.dart +++ b/lib/features/bottom_navigation_bar/presentation/widgets/bottom_navigation_bar_widget.dart @@ -63,7 +63,7 @@ class _BottomNavigationBarWidgetState extends State { return Scaffold( body: widget.child, bottomNavigationBar: SizedBox( - height: 58, + height: 80, child: BottomNavigationBar( type: BottomNavigationBarType.fixed, onTap: _onItemTapped, From 0d7d5a3a5a1f833d0fa349431642b3651cbc7964 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Fri, 15 Nov 2024 16:11:40 +0300 Subject: [PATCH 02/95] feat(feed): image from camera --- lib/app_router.dart | 2 +- .../pages/blog_post_create_screen.dart | 136 +++++++++++------- 2 files changed, 85 insertions(+), 53 deletions(-) diff --git a/lib/app_router.dart b/lib/app_router.dart index 91ab37fd..457c532c 100644 --- a/lib/app_router.dart +++ b/lib/app_router.dart @@ -159,7 +159,7 @@ class AppRouter { GoRoute( path: '/blog-post-create-screen', name: 'blogPostCreateScreen', - builder: (context, state) => BlogPostCreateScreen.builder(context), + builder: (context, state) => BlogPostCreateScreen(), ), GoRoute( path: '/blog-post-screen', diff --git a/lib/features/blog_post_create/presentation/pages/blog_post_create_screen.dart b/lib/features/blog_post_create/presentation/pages/blog_post_create_screen.dart index 74a83a25..d41a1967 100644 --- a/lib/features/blog_post_create/presentation/pages/blog_post_create_screen.dart +++ b/lib/features/blog_post_create/presentation/pages/blog_post_create_screen.dart @@ -1,10 +1,10 @@ import 'dart:async'; import 'dart:io'; import 'package:eatvio_app/old/feed/blog_post_create_screen/bloc/blog_post_create_bloc.dart'; -import 'package:eatvio_app/old/feed/blog_post_create_screen/models/blog_post_create_model.dart'; import 'package:eatvio_app/theme/app_decoration.dart'; import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; +import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_keyboard_visibility/flutter_keyboard_visibility.dart'; @@ -13,22 +13,13 @@ import 'package:image_picker/image_picker.dart'; class BlogPostCreateScreen extends StatefulWidget { const BlogPostCreateScreen({Key? key}) : super(key: key); - static Widget builder(BuildContext context) { - final blog_postID = ModalRoute.of(context)!.settings.arguments; - return BlocProvider( - create: (context) => BlogPostCreateBloc(BlogPostCreateState(blog_postModelObj: BlogPostCreateModel(blog_postID: blog_postID.toString()))) - ..add(BlogPostCreateInitialEvent()), - child: BlogPostCreateScreen(), - ); - } - @override State createState() => _BlogPostCreateScreenState(); } class _BlogPostCreateScreenState extends State { + final blogPostCreateBloc = BlogPostCreateBloc(BlogPostCreateState())..add(BlogPostCreateInitialEvent()); bool shrinkImage = false; - late StreamSubscription keyboardSubscription; @override @@ -49,24 +40,72 @@ class _BlogPostCreateScreenState extends State { } Widget build(BuildContext context) { - return BlocBuilder( - builder: (context, state) { - if (state is BlogPostCreateInitialState) { - // Это начальное состояние, данные ещё не загружены. - return Container( - color: Colors.white, - ); - } else if (state is BlogPostCreateLoadedState) { - // Данные загружены, можно строить экран. - return _buildBlogPostCreate(context, state); - } else if (state is BlogPostCreateErrorState) { - // Произошла ошибка при загрузке данных. - return Center(child: Text(state.errorMessage)); - } else { - // Другие состояния, если они есть. - return Container(); // Пустой контейнер для необработанных состояний. - } - }, + return BlocProvider( + create: (BuildContext context) => blogPostCreateBloc, + child: BlocBuilder( + builder: (context, state) { + if (state is BlogPostCreateInitialState) { + // Это начальное состояние, данные ещё не загружены. + return Container( + color: Colors.white, + ); + } else if (state is BlogPostCreateLoadedState) { + // Данные загружены, можно строить экран. + return _buildBlogPostCreate(context, state); + } else if (state is BlogPostCreateErrorState) { + // Произошла ошибка при загрузке данных. + return Center(child: Text(state.errorMessage)); + } else { + // Другие состояния, если они есть. + return Container(); // Пустой контейнер для необработанных состояний. + } + }, + ), + ); + } + + _showImagePicker() { + showCupertinoModalPopup( + context: context, + builder: (context) => CupertinoActionSheet( + actions: [ + CupertinoActionSheetAction( + onPressed: () async { + final picker = ImagePicker(); + XFile? image = await picker.pickImage(source: ImageSource.camera); + if (image != null) blogPostCreateBloc.add(UploadImages(image)); + Navigator.of(context).pop(); + }, + child: const Row( + children: const [ + Icon(Icons.photo_camera), + SizedBox(width: 8), + Text('Фото'), + ], + ), + ), + CupertinoActionSheetAction( + onPressed: () async { + final picker = ImagePicker(); + XFile? image = await picker.pickImage(source: ImageSource.gallery); + if (image != null) blogPostCreateBloc.add(UploadImages(image)); + Navigator.of(context).pop(); + }, + child: const Row( + children: const [ + Icon(Icons.photo), + SizedBox(width: 8), + Text('Галерея'), + ], + ), + ), + ], + cancelButton: CupertinoActionSheetAction( + onPressed: () => Navigator.of(context).pop(), + isDestructiveAction: true, + child: const Text('Отмена'), + ), + ), ); } @@ -164,18 +203,15 @@ class _BlogPostCreateScreenState extends State { ), ), if (state.image != null) - AnimatedContainer( + Container( width: shrinkImage ? 52 : MediaQuery.of(context).size.width - 32, - curve: Curves.easeIn, - duration: Duration(milliseconds: 150), - child: ConstrainedBox( - constraints: BoxConstraints( - maxWidth: MediaQuery.of(context).size.width - 32, - ), - child: ClipRRect( - borderRadius: BorderRadius.circular(16), - child: Image( - image: FileImage(File(state.image!.path)), + child: ClipRRect( + borderRadius: BorderRadius.circular(16), + child: Image( + image: FileImage( + File( + state.image!.path, + ), ), ), ), @@ -184,6 +220,14 @@ class _BlogPostCreateScreenState extends State { ), ); } + + addImage(BuildContext context, bool isLoading) { + if (!isLoading) { + return () { + _showImagePicker(); + }; + } + } } _submitForm( @@ -194,15 +238,3 @@ _submitForm( ) async { context.read().add(CreateBlogPost()); } - -addImage(BuildContext context, bool isLoading) { - if (!isLoading) { - return () async { - final picker = ImagePicker(); - XFile? image = await picker.pickImage(source: ImageSource.gallery); - if (image != null) { - context.read().add(UploadImages(image)); - } - }; - } -} From ce7e620cb333716b190559d3071ffe96abcaeb29 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Fri, 15 Nov 2024 16:16:39 +0300 Subject: [PATCH 03/95] feat(other): add max length in textformfield --- .../settings/presentation/pages/other_info_screen.dart | 10 ++++++---- lib/widgets/custom_text_form_field.dart | 3 +++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/lib/features/settings/presentation/pages/other_info_screen.dart b/lib/features/settings/presentation/pages/other_info_screen.dart index b786a746..4cb62dc4 100644 --- a/lib/features/settings/presentation/pages/other_info_screen.dart +++ b/lib/features/settings/presentation/pages/other_info_screen.dart @@ -4,7 +4,6 @@ import 'package:eatvio_app/generated/l10n.dart'; import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; import 'package:go_router/go_router.dart'; class OtherInfoScreen extends StatefulWidget { @@ -60,6 +59,7 @@ class _OtherInfoScreenState extends State { autofocus: true, minLines: 2, maxLines: 8, + maxLength: 250, onChanged: (newValue) {}, ), SizedBox(height: 16), @@ -70,6 +70,7 @@ class _OtherInfoScreenState extends State { hintText: s.enter_information, autofocus: true, minLines: 2, + maxLength: 250, maxLines: 8, onChanged: (newValue) {}, ), @@ -82,6 +83,7 @@ class _OtherInfoScreenState extends State { "Я занимаюсь плаванием , почти каждый вечер прогулки на свежем воздухе, пару раз в месяц играю в волейбол. Стараюсь не сидеть на месте!", autofocus: true, maxLines: 8, + maxLength: 250, onChanged: (newValue) {}, ), SizedBox(height: 16), @@ -92,6 +94,7 @@ class _OtherInfoScreenState extends State { hintText: s.enter_information, maxLines: 7, minLines: 2, + maxLength: 250, onChanged: (newValue) {}, ), SizedBox(height: 16), @@ -102,6 +105,7 @@ class _OtherInfoScreenState extends State { hintText: s.enter_information, maxLines: 7, minLines: 2, + maxLength: 250, onChanged: (newValue) {}, ), SizedBox(height: 16), @@ -114,9 +118,7 @@ class _OtherInfoScreenState extends State { SizedBox(height: 4), CustomTextFormField( controller: additionalInfoController, - inputFormatters: [ - new LengthLimitingTextInputFormatter(250), - ], + maxLength: 250, hintText: "У меня крепкое здоровье, но последнее время часто утомляюсь, однако, это мне не мешает радоваться жизни", maxLines: 8, onChanged: (newValue) {}, diff --git a/lib/widgets/custom_text_form_field.dart b/lib/widgets/custom_text_form_field.dart index b493f9c9..6054079f 100644 --- a/lib/widgets/custom_text_form_field.dart +++ b/lib/widgets/custom_text_form_field.dart @@ -34,6 +34,7 @@ class CustomTextFormField extends StatelessWidget { this.onChanged, this.onEditingComplete, this.minLines = 1, + this.maxLength, super.key, }); @@ -67,6 +68,7 @@ class CustomTextFormField extends StatelessWidget { final Function()? onEditingComplete; final void Function(String?)? onSaved; final void Function(String)? onChanged; + final int? maxLength; @override Widget build(BuildContext context) { @@ -74,6 +76,7 @@ class CustomTextFormField extends StatelessWidget { alignment: alignment ?? Alignment.center, child: TextFormField( minLines: minLines, + maxLength: maxLength, onChanged: onChanged, controller: controller, focusNode: focusNode ?? null, From f836cb52c2f00ba5efa9db1c4f96a908dadb1f5f Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Fri, 15 Nov 2024 16:22:49 +0300 Subject: [PATCH 04/95] feat(diary): cant fill future day --- .../presentation/pages/diary_screen.dart | 59 +++++++++++-------- 1 file changed, 33 insertions(+), 26 deletions(-) diff --git a/lib/features/diary/presentation/pages/diary_screen.dart b/lib/features/diary/presentation/pages/diary_screen.dart index cfd571cf..747b084d 100644 --- a/lib/features/diary/presentation/pages/diary_screen.dart +++ b/lib/features/diary/presentation/pages/diary_screen.dart @@ -278,23 +278,25 @@ class _DiaryScreenState extends State { _mealButton(5), ], ), - const SizedBox(height: 12), - _divider(context), - const SizedBox(height: 12), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Text( - 'Время приема пищи', - style: TextStyle( - color: Color(0xFF323F4B), - fontSize: 16, - fontWeight: FontWeight.w500, + _selectedDay!.compareTo(today!) == 1 ? const SizedBox.shrink() : const SizedBox(height: 12), + _selectedDay!.compareTo(today!) == 1 ? const SizedBox.shrink() : _divider(context), + _selectedDay!.compareTo(today!) == 1 ? const SizedBox.shrink() : const SizedBox(height: 12), + _selectedDay!.compareTo(today!) == 1 + ? const SizedBox.shrink() + : Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text( + 'Время приема пищи', + style: TextStyle( + color: Color(0xFF323F4B), + fontSize: 16, + fontWeight: FontWeight.w500, + ), + ), + _timeOfMeal(time), + ], ), - ), - _timeOfMeal(time), - ], - ), const SizedBox(height: 12), _divider(context), const SizedBox(height: 12), @@ -303,21 +305,25 @@ class _DiaryScreenState extends State { _addProductButton(diaryDay), const SizedBox(height: 24), if (diaryDay.meals[currentSelectedMealNumber - 1].photos.isEmpty) - GestureDetector( - onTap: () => _showImagePicker(diaryDay), - child: SvgPicture.asset( - width: MediaQuery.of(context).size.width - 32, - 'assets/no_one_image_was_added.svg', - ), - ), + _selectedDay!.compareTo(today!) == 1 + ? const SizedBox.shrink() + : GestureDetector( + onTap: () => _showImagePicker(diaryDay), + child: SvgPicture.asset( + width: MediaQuery.of(context).size.width - 32, + 'assets/no_one_image_was_added.svg', + ), + ), if (diaryDay.meals[currentSelectedMealNumber - 1].photos.isNotEmpty) _photoGallery( diaryDay.meals[currentSelectedMealNumber - 1].photos, diaryDay, ), - SatietyRatingWidget( - currentSelectedSatietyRating: currentSelectedSatietyRating, - ), + _selectedDay!.compareTo(today!) == 1 + ? const SizedBox.shrink() + : SatietyRatingWidget( + currentSelectedSatietyRating: currentSelectedSatietyRating, + ), ], ), ), @@ -1057,6 +1063,7 @@ class _DiaryScreenState extends State { } _addProductButton(DiaryDayModel diaryDay) { + if (_selectedDay!.compareTo(today!) == 1) return const SizedBox.shrink(); return InkWell( onTap: () { setState(() { From ab975eb59b99ab18f9500c9a697465d8c853c765 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Fri, 15 Nov 2024 16:24:55 +0300 Subject: [PATCH 05/95] feat(diary): hide chart in future days --- lib/features/diary/presentation/pages/diary_screen.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/features/diary/presentation/pages/diary_screen.dart b/lib/features/diary/presentation/pages/diary_screen.dart index 747b084d..94d1eff5 100644 --- a/lib/features/diary/presentation/pages/diary_screen.dart +++ b/lib/features/diary/presentation/pages/diary_screen.dart @@ -130,7 +130,7 @@ class _DiaryScreenState extends State { state.diary, state.currentSelectedSatietyRating, ), - if (state is DiaryStateLoaded) _chart(state.nutrition), + if (state is DiaryStateLoaded && _selectedDay!.compareTo(today!) != 1) _chart(state.nutrition), if (state is DiaryStateLoaded && state.diary.closed == 0 && _selectedDay == today) Padding( padding: const EdgeInsets.only(top: 12), From c4761ddb996e432f0115dfc40e4053adcc6af865 Mon Sep 17 00:00:00 2001 From: maxxkim Date: Fri, 15 Nov 2024 16:43:16 +0300 Subject: [PATCH 06/95] fix(ios): update camera desc --- ios/Runner.xcodeproj/project.pbxproj | 15 ++++++++++++--- ios/Runner/Info.plist | 4 +++- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 7454c98b..b335af4e 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -361,7 +361,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + CURRENT_PROJECT_VERSION = 16; DEVELOPMENT_TEAM = VL68C36HYS; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( @@ -369,6 +369,8 @@ "$(PROJECT_DIR)/Flutter", ); INFOPLIST_FILE = Runner/Info.plist; + INFOPLIST_KEY_CFBundleDisplayName = Eatvio; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -377,6 +379,7 @@ "$(inherited)", "$(PROJECT_DIR)/Flutter", ); + MARKETING_VERSION = 2.0.0; PRODUCT_BUNDLE_IDENTIFIER = com.eatvioapp.app; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; @@ -504,7 +507,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + CURRENT_PROJECT_VERSION = 16; DEVELOPMENT_TEAM = VL68C36HYS; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( @@ -512,6 +515,8 @@ "$(PROJECT_DIR)/Flutter", ); INFOPLIST_FILE = Runner/Info.plist; + INFOPLIST_KEY_CFBundleDisplayName = Eatvio; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -520,6 +525,7 @@ "$(inherited)", "$(PROJECT_DIR)/Flutter", ); + MARKETING_VERSION = 2.0.0; PRODUCT_BUNDLE_IDENTIFIER = com.eatvioapp.app; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; @@ -535,7 +541,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + CURRENT_PROJECT_VERSION = 16; DEVELOPMENT_TEAM = VL68C36HYS; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( @@ -543,6 +549,8 @@ "$(PROJECT_DIR)/Flutter", ); INFOPLIST_FILE = Runner/Info.plist; + INFOPLIST_KEY_CFBundleDisplayName = Eatvio; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -551,6 +559,7 @@ "$(inherited)", "$(PROJECT_DIR)/Flutter", ); + MARKETING_VERSION = 2.0.0; PRODUCT_BUNDLE_IDENTIFIER = com.eatvioapp.app; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index 8795a89d..9efe0f5f 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -27,7 +27,9 @@ UIMainStoryboardFile Main NSPhotoLibraryUsageDescription - UserPhotoUpload + Нужно для загрузки фото + NSCameraUsageDescription + Нужно для загрузки фото UIBackgroundModes fetch From 8b121762182d2dae1b7e619acbf5b38213af35e6 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Fri, 15 Nov 2024 17:41:13 +0300 Subject: [PATCH 07/95] fix: bottom nav bar size --- .../widgets/bottom_navigation_bar_widget.dart | 277 +++++++++--------- 1 file changed, 137 insertions(+), 140 deletions(-) diff --git a/lib/features/bottom_navigation_bar/presentation/widgets/bottom_navigation_bar_widget.dart b/lib/features/bottom_navigation_bar/presentation/widgets/bottom_navigation_bar_widget.dart index 787fe3c4..ebab1850 100644 --- a/lib/features/bottom_navigation_bar/presentation/widgets/bottom_navigation_bar_widget.dart +++ b/lib/features/bottom_navigation_bar/presentation/widgets/bottom_navigation_bar_widget.dart @@ -62,157 +62,154 @@ class _BottomNavigationBarWidgetState extends State { final s = S.of(context); return Scaffold( body: widget.child, - bottomNavigationBar: SizedBox( - height: 80, - child: BottomNavigationBar( - type: BottomNavigationBarType.fixed, - onTap: _onItemTapped, - selectedFontSize: 10, - unselectedFontSize: 10, - selectedItemColor: appTheme.blueA400, - currentIndex: currentBottomNavBarIndex, - items: [ - BottomNavigationBarItem( - label: '', - icon: BlocProvider( - create: (context) => sl()..getMyProfile(), - child: BlocBuilder( - builder: (BuildContext context, ProfileAvatarState state) { - if (state is ProfileAvatarStateLoaded) { - return CircleAvatar( - backgroundImage: NetworkImage(state.profile.profilePhotoUrl), - radius: 16, - ); - } + bottomNavigationBar: BottomNavigationBar( + type: BottomNavigationBarType.fixed, + onTap: _onItemTapped, + selectedFontSize: 10, + unselectedFontSize: 10, + selectedItemColor: appTheme.blueA400, + currentIndex: currentBottomNavBarIndex, + items: [ + BottomNavigationBarItem( + label: '', + icon: BlocProvider( + create: (context) => sl()..getMyProfile(), + child: BlocBuilder( + builder: (BuildContext context, ProfileAvatarState state) { + if (state is ProfileAvatarStateLoaded) { return CircleAvatar( + backgroundImage: NetworkImage(state.profile.profilePhotoUrl), radius: 16, - backgroundColor: Colors.black12, ); - }, - ), - ), - ), - BottomNavigationBarItem( - label: 'Лента', - icon: Padding( - padding: const EdgeInsets.only(bottom: 2), - child: SvgPicture.asset( - colorFilter: ColorFilter.mode(Colors.grey, BlendMode.srcIn), - width: 20, - height: 20, - ImageConstant.icnFeed, - ), - ), - activeIcon: Padding( - padding: const EdgeInsets.only(bottom: 2), - child: SvgPicture.asset( - ImageConstant.icnFeed, - width: 20, - height: 20, - colorFilter: ColorFilter.mode( - appTheme.blueA400, - BlendMode.srcIn, - ), - ), - ), - ), - BottomNavigationBarItem( - label: s.diary, - icon: Padding( - padding: const EdgeInsets.only(bottom: 2), - child: SvgPicture.asset( - colorFilter: ColorFilter.mode(Colors.grey, BlendMode.srcIn), - ImageConstant.icnDiary, - width: 20, - height: 20, - ), - ), - activeIcon: Padding( - padding: const EdgeInsets.only(bottom: 2), - child: SvgPicture.asset( - ImageConstant.icnDiary, - width: 20, - height: 20, - colorFilter: ColorFilter.mode( - appTheme.blueA400, - BlendMode.srcIn, - ), - ), - ), - ), - BottomNavigationBarItem( - label: s.chat, - icon: BlocBuilder( - builder: (BuildContext context, NewMessagesState state) { - return badges.Badge( - position: badges.BadgePosition.topEnd(), - badgeAnimation: badges.BadgeAnimation.fade(), - badgeContent: Text( - (state is NewMessagesStateLoaded) ? state.messagesCount.toString() : '0', - style: TextStyle( - color: Colors.white, - fontSize: 8, - ), - ), - child: Padding( - padding: const EdgeInsets.only(bottom: 2), - child: SvgPicture.asset( - ImageConstant.icnChat, - width: 20, - height: 20, - colorFilter: currentBottomNavBarIndex == 3 - ? ColorFilter.mode( - appTheme.blueA400, - BlendMode.srcIn, - ) - : ColorFilter.mode(Colors.grey, BlendMode.srcIn), - ), - ), + } + return CircleAvatar( + radius: 16, + backgroundColor: Colors.black12, ); }, ), ), - BottomNavigationBarItem( - label: 'Уведомления', - icon: BlocBuilder( - builder: (BuildContext context, NotificationsState state) { - return badges.Badge( - position: badges.BadgePosition.topEnd(), - badgeAnimation: badges.BadgeAnimation.fade(), - badgeContent: Text( - (state is NotificationsStateLoaded) ? state.notificationsCount.toString() : '0', - style: TextStyle( - color: Colors.white, - fontSize: 8, - ), - ), - child: Padding( - padding: const EdgeInsets.only(bottom: 2), - child: SvgPicture.asset( - ImageConstant.icnBell, - colorFilter: currentBottomNavBarIndex == 4 - ? ColorFilter.mode( - appTheme.blueA400, - BlendMode.srcIn, - ) - : ColorFilter.mode(Colors.grey, BlendMode.srcIn), - width: 20, - height: 20, - ), - ), - ); - }, + ), + BottomNavigationBarItem( + label: 'Лента', + icon: Padding( + padding: const EdgeInsets.only(bottom: 2), + child: SvgPicture.asset( + colorFilter: ColorFilter.mode(Colors.grey, BlendMode.srcIn), + width: 20, + height: 20, + ImageConstant.icnFeed, ), ), - BottomNavigationBarItem( - label: '', - icon: SvgPicture.asset( - ImageConstant.imgLogo, - height: 32, + activeIcon: Padding( + padding: const EdgeInsets.only(bottom: 2), + child: SvgPicture.asset( + ImageConstant.icnFeed, + width: 20, + height: 20, + colorFilter: ColorFilter.mode( + appTheme.blueA400, + BlendMode.srcIn, + ), ), ), - ], - ), + ), + BottomNavigationBarItem( + label: s.diary, + icon: Padding( + padding: const EdgeInsets.only(bottom: 2), + child: SvgPicture.asset( + colorFilter: ColorFilter.mode(Colors.grey, BlendMode.srcIn), + ImageConstant.icnDiary, + width: 20, + height: 20, + ), + ), + activeIcon: Padding( + padding: const EdgeInsets.only(bottom: 2), + child: SvgPicture.asset( + ImageConstant.icnDiary, + width: 20, + height: 20, + colorFilter: ColorFilter.mode( + appTheme.blueA400, + BlendMode.srcIn, + ), + ), + ), + ), + BottomNavigationBarItem( + label: s.chat, + icon: BlocBuilder( + builder: (BuildContext context, NewMessagesState state) { + return badges.Badge( + position: badges.BadgePosition.topEnd(), + badgeAnimation: badges.BadgeAnimation.fade(), + badgeContent: Text( + (state is NewMessagesStateLoaded) ? state.messagesCount.toString() : '0', + style: TextStyle( + color: Colors.white, + fontSize: 8, + ), + ), + child: Padding( + padding: const EdgeInsets.only(bottom: 2), + child: SvgPicture.asset( + ImageConstant.icnChat, + width: 20, + height: 20, + colorFilter: currentBottomNavBarIndex == 3 + ? ColorFilter.mode( + appTheme.blueA400, + BlendMode.srcIn, + ) + : ColorFilter.mode(Colors.grey, BlendMode.srcIn), + ), + ), + ); + }, + ), + ), + BottomNavigationBarItem( + label: 'Уведомления', + icon: BlocBuilder( + builder: (BuildContext context, NotificationsState state) { + return badges.Badge( + position: badges.BadgePosition.topEnd(), + badgeAnimation: badges.BadgeAnimation.fade(), + badgeContent: Text( + (state is NotificationsStateLoaded) ? state.notificationsCount.toString() : '0', + style: TextStyle( + color: Colors.white, + fontSize: 8, + ), + ), + child: Padding( + padding: const EdgeInsets.only(bottom: 2), + child: SvgPicture.asset( + ImageConstant.icnBell, + colorFilter: currentBottomNavBarIndex == 4 + ? ColorFilter.mode( + appTheme.blueA400, + BlendMode.srcIn, + ) + : ColorFilter.mode(Colors.grey, BlendMode.srcIn), + width: 20, + height: 20, + ), + ), + ); + }, + ), + ), + BottomNavigationBarItem( + label: '', + icon: SvgPicture.asset( + ImageConstant.imgLogo, + height: 32, + ), + ), + ], ), ); } From b9d74ffec0201ea481d04ad7e1591909ea68fdf4 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 07:39:44 +0000 Subject: [PATCH 08/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 39 +++++++++++++++++++++++++++++---------- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 0b639038..e3c55160 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -19,7 +19,14 @@ jobs: with: distribution: "zulu" java-version: ${{ env.java_version }} - cache: "gradle" + + - name: Cache Gradle dependencies + uses: actions/cache@v2 + with: + path: ~/.gradle/caches + key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} + restore-keys: | + gradle-${{ runner.os }}- - name: Install Android SDK run: | @@ -31,28 +38,40 @@ jobs: mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ export ANDROID_SDK_ROOT=$HOME/Android/Sdk export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true + yes | sdkmanager --licenses 2>/dev/null || true + + - name: Cache Android SDK + uses: actions/cache@v2 + with: + path: | + $HOME/Android/Sdk + ~/.android + key: android-sdk-${{ runner.os }}-${{ hashFiles('**/build.gradle') }} + restore-keys: | + android-sdk-${{ runner.os }}- - name: Set up Android environment variables run: | echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV - echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV + echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV - name: Debug Environment Variables run: | echo "ANDROID_SDK_ROOT: $ANDROID_SDK_ROOT" echo "ANDROID_HOME: $ANDROID_HOME" - echo "PATH: $PATH" + echo "PATH: $PATH" - uses: actions/cache@v2 with: path: ${{ runner.tool_cache }}/flutter key: flutter-${{ env.flutter_version }}-${{ env.flutter_channel }} + restore-keys: | + flutter-${{ env.flutter_version }}- - name: Install jq run: | - apt-get install -y jq + apt-get install -y jq - id: flutter-action uses: actions/flutter-action@v2 @@ -69,14 +88,14 @@ jobs: echo VERSION=${{ steps.flutter-action.outputs.VERSION }} echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} - echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} + echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} shell: bash - name: Fix dir permissions run: | git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} flutter config --android-sdk="$ANDROID_HOME" - flutter doctor -v + flutter doctor -v - name: Get dependencies run: flutter pub get @@ -89,11 +108,11 @@ jobs: - name: Test run: | - flutter test + flutter test - name: Build apk run: | - flutter build apk + flutter build apk - name: Rename and move apk run: | @@ -101,7 +120,7 @@ jobs: APK_NAME="eatvio_app_${TIMESTAMP}.apk" mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME echo "APK build finished $APK_NAME" - echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV + echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV - name: Upload APK artifact uses: actions/upload-artifact@v3 From 5409bb1ef105203f6077bf26e77bf7dcaf47c8e1 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 07:46:51 +0000 Subject: [PATCH 09/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index e3c55160..c879c02c 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -38,7 +38,7 @@ jobs: mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ export ANDROID_SDK_ROOT=$HOME/Android/Sdk export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true + yes | sdkmanager --licenses 2>/dev/null || true - name: Cache Android SDK uses: actions/cache@v2 @@ -54,24 +54,27 @@ jobs: run: | echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV - echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV + echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV - name: Debug Environment Variables run: | echo "ANDROID_SDK_ROOT: $ANDROID_SDK_ROOT" echo "ANDROID_HOME: $ANDROID_HOME" - echo "PATH: $PATH" + echo "PATH: $PATH" - - uses: actions/cache@v2 + - name: Cache Flutter dependencies + uses: actions/cache@v2 with: - path: ${{ runner.tool_cache }}/flutter + path: | + $HOME/.pub-cache + $HOME/.flutter key: flutter-${{ env.flutter_version }}-${{ env.flutter_channel }} restore-keys: | flutter-${{ env.flutter_version }}- - name: Install jq run: | - apt-get install -y jq + apt-get install -y jq - id: flutter-action uses: actions/flutter-action@v2 @@ -88,14 +91,14 @@ jobs: echo VERSION=${{ steps.flutter-action.outputs.VERSION }} echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} - echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} + echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} shell: bash - name: Fix dir permissions run: | git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} flutter config --android-sdk="$ANDROID_HOME" - flutter doctor -v + flutter doctor -v - name: Get dependencies run: flutter pub get @@ -103,16 +106,11 @@ jobs: - name: Native Analyze run: flutter analyze - #- name: Run Code Metrics - # run: flutter pub run dart_code_metrics:metrics lib --disable-sunset-warning --fatal-warnings --fatal-performance - - name: Test - run: | - flutter test + run: flutter test - name: Build apk - run: | - flutter build apk + run: flutter build apk - name: Rename and move apk run: | @@ -120,7 +118,7 @@ jobs: APK_NAME="eatvio_app_${TIMESTAMP}.apk" mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME echo "APK build finished $APK_NAME" - echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV + echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV - name: Upload APK artifact uses: actions/upload-artifact@v3 From aa282e1b11063cf430f9994cc69950072b365fab Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 11:10:06 +0300 Subject: [PATCH 10/95] ix(version): upgrade --- lib/generated/intl/messages_all.dart | 2 +- lib/generated/intl/messages_en.dart | 54 ++++++++++++++-------------- lib/generated/l10n.dart | 4 +-- pubspec.yaml | 2 +- 4 files changed, 31 insertions(+), 31 deletions(-) diff --git a/lib/generated/intl/messages_all.dart b/lib/generated/intl/messages_all.dart index b6510a8a..203415cc 100644 --- a/lib/generated/intl/messages_all.dart +++ b/lib/generated/intl/messages_all.dart @@ -36,7 +36,7 @@ MessageLookupByLibrary? _findExact(String localeName) { Future initializeMessages(String localeName) { var availableLocale = Intl.verifiedLocale( localeName, (locale) => _deferredLibraries[locale] != null, - onFailure: (_) => null,); + onFailure: (_) => null); if (availableLocale == null) { return new SynchronousFuture(false); } diff --git a/lib/generated/intl/messages_en.dart b/lib/generated/intl/messages_en.dart index 910355a7..ed377a7a 100644 --- a/lib/generated/intl/messages_en.dart +++ b/lib/generated/intl/messages_en.dart @@ -32,7 +32,7 @@ class MessageLookup extends MessageLookupByLibrary { "admin": MessageLookupByLibrary.simpleMessage("Админ"), "alko_type": MessageLookupByLibrary.simpleMessage("Алкоголь"), "alko_type_desc": MessageLookupByLibrary.simpleMessage( - "С некоторыми видами диет можно употреблять алкоголь в умеренных количествах. Рекомендуется совмещать вместе с низкокалорийными закусками.",), + "С некоторыми видами диет можно употреблять алкоголь в умеренных количествах. Рекомендуется совмещать вместе с низкокалорийными закусками."), "all": MessageLookupByLibrary.simpleMessage("Все"), "allergies_presence": MessageLookupByLibrary.simpleMessage("Наличие аллергии"), @@ -43,7 +43,7 @@ class MessageLookup extends MessageLookupByLibrary { "archived": MessageLookupByLibrary.simpleMessage("В архиве"), "authentificate": MessageLookupByLibrary.simpleMessage("Войти"), "average_pressure": MessageLookupByLibrary.simpleMessage( - "Средние показатели давления:",), + "Средние показатели давления:"), "bodymass_chart": MessageLookupByLibrary.simpleMessage("График ИМТ"), "calories": MessageLookupByLibrary.simpleMessage("Калории"), "carbohydrates": MessageLookupByLibrary.simpleMessage("Углеводы"), @@ -52,11 +52,11 @@ class MessageLookup extends MessageLookupByLibrary { "chest_circumference": MessageLookupByLibrary.simpleMessage("Обхват груди"), "choose_start_diet_date": MessageLookupByLibrary.simpleMessage( - "Выберите дату старты диеты. Она отобразиться у Вас в дневнике",), + "Выберите дату старты диеты. Она отобразиться у Вас в дневнике"), "circumference_empty": MessageLookupByLibrary.simpleMessage( - "Все замеры обязательны к заполнению",), + "Все замеры обязательны к заполнению"), "circumference_is_not_a_number": MessageLookupByLibrary.simpleMessage( - "Все замеры должны быть числами",), + "Все замеры должны быть числами"), "circumferences_chart": MessageLookupByLibrary.simpleMessage("График обхватов"), "city": MessageLookupByLibrary.simpleMessage("Город"), @@ -71,7 +71,7 @@ class MessageLookup extends MessageLookupByLibrary { "copy_link": MessageLookupByLibrary.simpleMessage("Скопировать ссылку"), "corb_type": MessageLookupByLibrary.simpleMessage("Мучное"), "corb_type_desc": MessageLookupByLibrary.simpleMessage( - "Если вы любите мучные продукты, но хотите придерживаться диеты, вам подходит диета с добавленим мучных блюд на основе цельнозерновых вариантов. В них больше сложных углеводов и клетчатки, что способствует длительному чувству сытости и поддерживает здоровье пищеварительной системы.",), + "Если вы любите мучные продукты, но хотите придерживаться диеты, вам подходит диета с добавленим мучных блюд на основе цельнозерновых вариантов. В них больше сложных углеводов и клетчатки, что способствует длительному чувству сытости и поддерживает здоровье пищеварительной системы."), "country": MessageLookupByLibrary.simpleMessage("Страна"), "date_of_birth": MessageLookupByLibrary.simpleMessage("Дата рождения"), "day": MessageLookupByLibrary.simpleMessage("День"), @@ -86,17 +86,17 @@ class MessageLookup extends MessageLookupByLibrary { "do_you_have_hypotension_tendency": MessageLookupByLibrary.simpleMessage("Есть ли у вас гипотония?"), "do_you_take_pills": MessageLookupByLibrary.simpleMessage( - "Принимаете ли вы лекарства или бады?",), + "Принимаете ли вы лекарства или бады?"), "down_pressure": MessageLookupByLibrary.simpleMessage("Нижние показатели давления:"), "draft": MessageLookupByLibrary.simpleMessage("Черновик"), "email": MessageLookupByLibrary.simpleMessage("Элетронная почта"), "email_empty": MessageLookupByLibrary.simpleMessage( - "Необходимо ввести адрес электронной почты",), + "Необходимо ввести адрес электронной почты"), "email_invalid": MessageLookupByLibrary.simpleMessage( - "Некорректный адрес электронной почты",), + "Некорректный адрес электронной почты"), "enter_additional_information": MessageLookupByLibrary.simpleMessage( - "Введите любую дополнительную информацию на своё усмотрение:",), + "Введите любую дополнительную информацию на своё усмотрение:"), "enter_information": MessageLookupByLibrary.simpleMessage("Введите информацию..."), "exit": MessageLookupByLibrary.simpleMessage("Выйти"), @@ -105,16 +105,16 @@ class MessageLookup extends MessageLookupByLibrary { "favorite_foods": MessageLookupByLibrary.simpleMessage("Любимые продукты"), "favorite_unfavorite_foods": MessageLookupByLibrary.simpleMessage( - "Ваши любимые/нелюбимые продукты питания?",), + "Ваши любимые/нелюбимые продукты питания?"), "female": MessageLookupByLibrary.simpleMessage("Женский"), "fill_in_information": MessageLookupByLibrary.simpleMessage("Заполните информацию:"), "finish": MessageLookupByLibrary.simpleMessage("Завершить"), "first_name": MessageLookupByLibrary.simpleMessage("Имя"), "first_name_empty": MessageLookupByLibrary.simpleMessage( - "Имя обязательно для заполнения",), + "Имя обязательно для заполнения"), "first_name_short": MessageLookupByLibrary.simpleMessage( - "В имени должен быть минимум 1 символ",), + "В имени должен быть минимум 1 символ"), "gr": MessageLookupByLibrary.simpleMessage("гр"), "grams": MessageLookupByLibrary.simpleMessage("гр"), "height_measurements": @@ -129,9 +129,9 @@ class MessageLookup extends MessageLookupByLibrary { "language": MessageLookupByLibrary.simpleMessage("Язык"), "last_name": MessageLookupByLibrary.simpleMessage("Фамилия"), "last_name_empty": MessageLookupByLibrary.simpleMessage( - "Фамилия обязательна для заполнения",), + "Фамилия обязательна для заполнения"), "last_name_short": MessageLookupByLibrary.simpleMessage( - "В фамилии должен быть минимум 6 символов",), + "В фамилии должен быть минимум 6 символов"), "lbl_english": MessageLookupByLibrary.simpleMessage("English"), "link_was_copied": MessageLookupByLibrary.simpleMessage("Ссылка успешно скопирована"), @@ -140,7 +140,7 @@ class MessageLookup extends MessageLookupByLibrary { "meal": MessageLookupByLibrary.simpleMessage("Приём пищи"), "meat_type": MessageLookupByLibrary.simpleMessage("С мясом"), "meat_type_desc": MessageLookupByLibrary.simpleMessage( - "Диета с мясом полезная и сбалансированная. Включает в себя нежирное мясо: курицу, индейку, кролика или говядину. В сочетании с овощами получаете все необходимые витамины и минералы. Не забывайте о порциях и старайтесь есть медленно, прислушиваясь к своему организму.",), + "Диета с мясом полезная и сбалансированная. Включает в себя нежирное мясо: курицу, индейку, кролика или говядину. В сочетании с овощами получаете все необходимые витамины и минералы. Не забывайте о порциях и старайтесь есть медленно, прислушиваясь к своему организму."), "milliliter": MessageLookupByLibrary.simpleMessage("мл"), "msg_network_err": MessageLookupByLibrary.simpleMessage("Сетевая ошибка!"), @@ -149,9 +149,9 @@ class MessageLookup extends MessageLookupByLibrary { "my_blog": MessageLookupByLibrary.simpleMessage("Мой блог"), "my_settings": MessageLookupByLibrary.simpleMessage("Мои настройки"), "name_empty": MessageLookupByLibrary.simpleMessage( - "Имя пользователя обязательно для заполнения",), + "Имя пользователя обязательно для заполнения"), "name_short": MessageLookupByLibrary.simpleMessage( - "В имени пользователя должно быть минимум 6 символов",), + "В имени пользователя должно быть минимум 6 символов"), "no": MessageLookupByLibrary.simpleMessage("Нет"), "no_account": MessageLookupByLibrary.simpleMessage("У меня нет аккаунта"), @@ -162,9 +162,9 @@ class MessageLookup extends MessageLookupByLibrary { "password_confirmation_mismatch": MessageLookupByLibrary.simpleMessage("Пароли не совпадают"), "password_empty": MessageLookupByLibrary.simpleMessage( - "Пароль обязателен для заполнения",), + "Пароль обязателен для заполнения"), "password_short": MessageLookupByLibrary.simpleMessage( - "В пароле должно быть минимум 6 символов",), + "В пароле должно быть минимум 6 символов"), "pcs": MessageLookupByLibrary.simpleMessage("шт"), "place_of_living": MessageLookupByLibrary.simpleMessage("Место проживания"), @@ -173,9 +173,9 @@ class MessageLookup extends MessageLookupByLibrary { "preferred_language": MessageLookupByLibrary.simpleMessage("Предпочитаемый язык общения"), "pressure_empty": MessageLookupByLibrary.simpleMessage( - "Все показатели давления обязательны к заполнению",), + "Все показатели давления обязательны к заполнению"), "pressure_is_not_a_number": MessageLookupByLibrary.simpleMessage( - "Все показатели давления должны быть числами",), + "Все показатели давления должны быть числами"), "profile": MessageLookupByLibrary.simpleMessage("Профиль"), "proteins": MessageLookupByLibrary.simpleMessage("Белки"), "save": MessageLookupByLibrary.simpleMessage("Сохранить"), @@ -184,11 +184,11 @@ class MessageLookup extends MessageLookupByLibrary { "skip": MessageLookupByLibrary.simpleMessage("Пропустить"), "startDiet": MessageLookupByLibrary.simpleMessage("Начать диету"), "tell_your_schedule": MessageLookupByLibrary.simpleMessage( - "Расскажите в свободной форме о том как просыпаетесь, когда едите, когда ложитесь спать:",), + "Расскажите в свободной форме о том как просыпаетесь, когда едите, когда ложитесь спать:"), "unfavorite_foods": MessageLookupByLibrary.simpleMessage("Нелюбимые продукты"), "up_pressure": MessageLookupByLibrary.simpleMessage( - "Верхние показатели давления:",), + "Верхние показатели давления:"), "user_authorization": MessageLookupByLibrary.simpleMessage("Аутентификация"), "user_registration": @@ -196,7 +196,7 @@ class MessageLookup extends MessageLookupByLibrary { "username": MessageLookupByLibrary.simpleMessage("Имя пользователя"), "vegan_type": MessageLookupByLibrary.simpleMessage("Вегетарианская"), "vegan_type_desc": MessageLookupByLibrary.simpleMessage( - "Диета основана на потреблении растительной пищи и отказе от продуктов животного происхождения. Такой тип питания может быть разнообразным и вкусным, а также полезным для здоровья.",), + "Диета основана на потреблении растительной пищи и отказе от продуктов животного происхождения. Такой тип питания может быть разнообразным и вкусным, а также полезным для здоровья."), "waist": MessageLookupByLibrary.simpleMessage("Талия"), "waist_circumference": MessageLookupByLibrary.simpleMessage("Обхват талии"), @@ -207,7 +207,7 @@ class MessageLookup extends MessageLookupByLibrary { "what_is_your_name": MessageLookupByLibrary.simpleMessage("Как вас зовут?"), "wrong_credentials": MessageLookupByLibrary.simpleMessage( - "Неверные данные пользователя",), + "Неверные данные пользователя"), "your_blood_pressure": MessageLookupByLibrary.simpleMessage("Ваше артериальное давление?"), "your_favorite_sports": @@ -215,6 +215,6 @@ class MessageLookup extends MessageLookupByLibrary { "your_gender": MessageLookupByLibrary.simpleMessage("Ваш пол?"), "your_height": MessageLookupByLibrary.simpleMessage("Ваш рост:"), "your_schedule": MessageLookupByLibrary.simpleMessage("Ваш режим дня?"), - "your_weight": MessageLookupByLibrary.simpleMessage("Ваш вес:"), + "your_weight": MessageLookupByLibrary.simpleMessage("Ваш вес:") }; } diff --git a/lib/generated/l10n.dart b/lib/generated/l10n.dart index 9fd1162c..96121d43 100644 --- a/lib/generated/l10n.dart +++ b/lib/generated/l10n.dart @@ -19,7 +19,7 @@ class S { static S get current { assert(_current != null, - 'No instance of S was loaded. Try to initialize the S delegate before accessing S.current.',); + 'No instance of S was loaded. Try to initialize the S delegate before accessing S.current.'); return _current!; } @@ -42,7 +42,7 @@ class S { static S of(BuildContext context) { final instance = S.maybeOf(context); assert(instance != null, - 'No instance of S present in the widget tree. Did you add S.delegate in localizationsDelegates?',); + 'No instance of S present in the widget tree. Did you add S.delegate in localizationsDelegates?'); return instance!; } diff --git a/pubspec.yaml b/pubspec.yaml index 652f6273..7ea1a971 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: eatvio_app description: A new Flutter project. -version: 0.0.0+1 +version: 1.0.1+16 publish_to: "none" environment: From b3656cfc212701162b8be2933e55809ebec5b89b Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 11:34:56 +0300 Subject: [PATCH 11/95] fix(version): upgrade --- pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pubspec.yaml b/pubspec.yaml index 7ea1a971..5b2c8596 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: eatvio_app description: A new Flutter project. -version: 1.0.1+16 +version: 1.0.2+17 publish_to: "none" environment: From b979969d3c1d7a23fbb84360f8f584a19d5482dc Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 12:42:23 +0300 Subject: [PATCH 12/95] fix: analyzer --- .../presentation/pages/profile_screen.dart | 2 +- lib/generated/intl/messages_all.dart | 2 +- lib/generated/intl/messages_en.dart | 54 +++++++++---------- lib/generated/l10n.dart | 4 +- 4 files changed, 31 insertions(+), 31 deletions(-) diff --git a/lib/features/profile/presentation/pages/profile_screen.dart b/lib/features/profile/presentation/pages/profile_screen.dart index 380d37c4..48ace714 100644 --- a/lib/features/profile/presentation/pages/profile_screen.dart +++ b/lib/features/profile/presentation/pages/profile_screen.dart @@ -124,7 +124,7 @@ class _ProfileScreenState extends State { if (widget.author == null) const SizedBox(height: 16), _activePlans(state), if (widget.author == null) const SizedBox(height: 16), - _newBlogPostButton(), + if (widget.author == null) _newBlogPostButton(), _blogPosts(state), ], ), diff --git a/lib/generated/intl/messages_all.dart b/lib/generated/intl/messages_all.dart index 203415cc..b6510a8a 100644 --- a/lib/generated/intl/messages_all.dart +++ b/lib/generated/intl/messages_all.dart @@ -36,7 +36,7 @@ MessageLookupByLibrary? _findExact(String localeName) { Future initializeMessages(String localeName) { var availableLocale = Intl.verifiedLocale( localeName, (locale) => _deferredLibraries[locale] != null, - onFailure: (_) => null); + onFailure: (_) => null,); if (availableLocale == null) { return new SynchronousFuture(false); } diff --git a/lib/generated/intl/messages_en.dart b/lib/generated/intl/messages_en.dart index ed377a7a..910355a7 100644 --- a/lib/generated/intl/messages_en.dart +++ b/lib/generated/intl/messages_en.dart @@ -32,7 +32,7 @@ class MessageLookup extends MessageLookupByLibrary { "admin": MessageLookupByLibrary.simpleMessage("Админ"), "alko_type": MessageLookupByLibrary.simpleMessage("Алкоголь"), "alko_type_desc": MessageLookupByLibrary.simpleMessage( - "С некоторыми видами диет можно употреблять алкоголь в умеренных количествах. Рекомендуется совмещать вместе с низкокалорийными закусками."), + "С некоторыми видами диет можно употреблять алкоголь в умеренных количествах. Рекомендуется совмещать вместе с низкокалорийными закусками.",), "all": MessageLookupByLibrary.simpleMessage("Все"), "allergies_presence": MessageLookupByLibrary.simpleMessage("Наличие аллергии"), @@ -43,7 +43,7 @@ class MessageLookup extends MessageLookupByLibrary { "archived": MessageLookupByLibrary.simpleMessage("В архиве"), "authentificate": MessageLookupByLibrary.simpleMessage("Войти"), "average_pressure": MessageLookupByLibrary.simpleMessage( - "Средние показатели давления:"), + "Средние показатели давления:",), "bodymass_chart": MessageLookupByLibrary.simpleMessage("График ИМТ"), "calories": MessageLookupByLibrary.simpleMessage("Калории"), "carbohydrates": MessageLookupByLibrary.simpleMessage("Углеводы"), @@ -52,11 +52,11 @@ class MessageLookup extends MessageLookupByLibrary { "chest_circumference": MessageLookupByLibrary.simpleMessage("Обхват груди"), "choose_start_diet_date": MessageLookupByLibrary.simpleMessage( - "Выберите дату старты диеты. Она отобразиться у Вас в дневнике"), + "Выберите дату старты диеты. Она отобразиться у Вас в дневнике",), "circumference_empty": MessageLookupByLibrary.simpleMessage( - "Все замеры обязательны к заполнению"), + "Все замеры обязательны к заполнению",), "circumference_is_not_a_number": MessageLookupByLibrary.simpleMessage( - "Все замеры должны быть числами"), + "Все замеры должны быть числами",), "circumferences_chart": MessageLookupByLibrary.simpleMessage("График обхватов"), "city": MessageLookupByLibrary.simpleMessage("Город"), @@ -71,7 +71,7 @@ class MessageLookup extends MessageLookupByLibrary { "copy_link": MessageLookupByLibrary.simpleMessage("Скопировать ссылку"), "corb_type": MessageLookupByLibrary.simpleMessage("Мучное"), "corb_type_desc": MessageLookupByLibrary.simpleMessage( - "Если вы любите мучные продукты, но хотите придерживаться диеты, вам подходит диета с добавленим мучных блюд на основе цельнозерновых вариантов. В них больше сложных углеводов и клетчатки, что способствует длительному чувству сытости и поддерживает здоровье пищеварительной системы."), + "Если вы любите мучные продукты, но хотите придерживаться диеты, вам подходит диета с добавленим мучных блюд на основе цельнозерновых вариантов. В них больше сложных углеводов и клетчатки, что способствует длительному чувству сытости и поддерживает здоровье пищеварительной системы.",), "country": MessageLookupByLibrary.simpleMessage("Страна"), "date_of_birth": MessageLookupByLibrary.simpleMessage("Дата рождения"), "day": MessageLookupByLibrary.simpleMessage("День"), @@ -86,17 +86,17 @@ class MessageLookup extends MessageLookupByLibrary { "do_you_have_hypotension_tendency": MessageLookupByLibrary.simpleMessage("Есть ли у вас гипотония?"), "do_you_take_pills": MessageLookupByLibrary.simpleMessage( - "Принимаете ли вы лекарства или бады?"), + "Принимаете ли вы лекарства или бады?",), "down_pressure": MessageLookupByLibrary.simpleMessage("Нижние показатели давления:"), "draft": MessageLookupByLibrary.simpleMessage("Черновик"), "email": MessageLookupByLibrary.simpleMessage("Элетронная почта"), "email_empty": MessageLookupByLibrary.simpleMessage( - "Необходимо ввести адрес электронной почты"), + "Необходимо ввести адрес электронной почты",), "email_invalid": MessageLookupByLibrary.simpleMessage( - "Некорректный адрес электронной почты"), + "Некорректный адрес электронной почты",), "enter_additional_information": MessageLookupByLibrary.simpleMessage( - "Введите любую дополнительную информацию на своё усмотрение:"), + "Введите любую дополнительную информацию на своё усмотрение:",), "enter_information": MessageLookupByLibrary.simpleMessage("Введите информацию..."), "exit": MessageLookupByLibrary.simpleMessage("Выйти"), @@ -105,16 +105,16 @@ class MessageLookup extends MessageLookupByLibrary { "favorite_foods": MessageLookupByLibrary.simpleMessage("Любимые продукты"), "favorite_unfavorite_foods": MessageLookupByLibrary.simpleMessage( - "Ваши любимые/нелюбимые продукты питания?"), + "Ваши любимые/нелюбимые продукты питания?",), "female": MessageLookupByLibrary.simpleMessage("Женский"), "fill_in_information": MessageLookupByLibrary.simpleMessage("Заполните информацию:"), "finish": MessageLookupByLibrary.simpleMessage("Завершить"), "first_name": MessageLookupByLibrary.simpleMessage("Имя"), "first_name_empty": MessageLookupByLibrary.simpleMessage( - "Имя обязательно для заполнения"), + "Имя обязательно для заполнения",), "first_name_short": MessageLookupByLibrary.simpleMessage( - "В имени должен быть минимум 1 символ"), + "В имени должен быть минимум 1 символ",), "gr": MessageLookupByLibrary.simpleMessage("гр"), "grams": MessageLookupByLibrary.simpleMessage("гр"), "height_measurements": @@ -129,9 +129,9 @@ class MessageLookup extends MessageLookupByLibrary { "language": MessageLookupByLibrary.simpleMessage("Язык"), "last_name": MessageLookupByLibrary.simpleMessage("Фамилия"), "last_name_empty": MessageLookupByLibrary.simpleMessage( - "Фамилия обязательна для заполнения"), + "Фамилия обязательна для заполнения",), "last_name_short": MessageLookupByLibrary.simpleMessage( - "В фамилии должен быть минимум 6 символов"), + "В фамилии должен быть минимум 6 символов",), "lbl_english": MessageLookupByLibrary.simpleMessage("English"), "link_was_copied": MessageLookupByLibrary.simpleMessage("Ссылка успешно скопирована"), @@ -140,7 +140,7 @@ class MessageLookup extends MessageLookupByLibrary { "meal": MessageLookupByLibrary.simpleMessage("Приём пищи"), "meat_type": MessageLookupByLibrary.simpleMessage("С мясом"), "meat_type_desc": MessageLookupByLibrary.simpleMessage( - "Диета с мясом полезная и сбалансированная. Включает в себя нежирное мясо: курицу, индейку, кролика или говядину. В сочетании с овощами получаете все необходимые витамины и минералы. Не забывайте о порциях и старайтесь есть медленно, прислушиваясь к своему организму."), + "Диета с мясом полезная и сбалансированная. Включает в себя нежирное мясо: курицу, индейку, кролика или говядину. В сочетании с овощами получаете все необходимые витамины и минералы. Не забывайте о порциях и старайтесь есть медленно, прислушиваясь к своему организму.",), "milliliter": MessageLookupByLibrary.simpleMessage("мл"), "msg_network_err": MessageLookupByLibrary.simpleMessage("Сетевая ошибка!"), @@ -149,9 +149,9 @@ class MessageLookup extends MessageLookupByLibrary { "my_blog": MessageLookupByLibrary.simpleMessage("Мой блог"), "my_settings": MessageLookupByLibrary.simpleMessage("Мои настройки"), "name_empty": MessageLookupByLibrary.simpleMessage( - "Имя пользователя обязательно для заполнения"), + "Имя пользователя обязательно для заполнения",), "name_short": MessageLookupByLibrary.simpleMessage( - "В имени пользователя должно быть минимум 6 символов"), + "В имени пользователя должно быть минимум 6 символов",), "no": MessageLookupByLibrary.simpleMessage("Нет"), "no_account": MessageLookupByLibrary.simpleMessage("У меня нет аккаунта"), @@ -162,9 +162,9 @@ class MessageLookup extends MessageLookupByLibrary { "password_confirmation_mismatch": MessageLookupByLibrary.simpleMessage("Пароли не совпадают"), "password_empty": MessageLookupByLibrary.simpleMessage( - "Пароль обязателен для заполнения"), + "Пароль обязателен для заполнения",), "password_short": MessageLookupByLibrary.simpleMessage( - "В пароле должно быть минимум 6 символов"), + "В пароле должно быть минимум 6 символов",), "pcs": MessageLookupByLibrary.simpleMessage("шт"), "place_of_living": MessageLookupByLibrary.simpleMessage("Место проживания"), @@ -173,9 +173,9 @@ class MessageLookup extends MessageLookupByLibrary { "preferred_language": MessageLookupByLibrary.simpleMessage("Предпочитаемый язык общения"), "pressure_empty": MessageLookupByLibrary.simpleMessage( - "Все показатели давления обязательны к заполнению"), + "Все показатели давления обязательны к заполнению",), "pressure_is_not_a_number": MessageLookupByLibrary.simpleMessage( - "Все показатели давления должны быть числами"), + "Все показатели давления должны быть числами",), "profile": MessageLookupByLibrary.simpleMessage("Профиль"), "proteins": MessageLookupByLibrary.simpleMessage("Белки"), "save": MessageLookupByLibrary.simpleMessage("Сохранить"), @@ -184,11 +184,11 @@ class MessageLookup extends MessageLookupByLibrary { "skip": MessageLookupByLibrary.simpleMessage("Пропустить"), "startDiet": MessageLookupByLibrary.simpleMessage("Начать диету"), "tell_your_schedule": MessageLookupByLibrary.simpleMessage( - "Расскажите в свободной форме о том как просыпаетесь, когда едите, когда ложитесь спать:"), + "Расскажите в свободной форме о том как просыпаетесь, когда едите, когда ложитесь спать:",), "unfavorite_foods": MessageLookupByLibrary.simpleMessage("Нелюбимые продукты"), "up_pressure": MessageLookupByLibrary.simpleMessage( - "Верхние показатели давления:"), + "Верхние показатели давления:",), "user_authorization": MessageLookupByLibrary.simpleMessage("Аутентификация"), "user_registration": @@ -196,7 +196,7 @@ class MessageLookup extends MessageLookupByLibrary { "username": MessageLookupByLibrary.simpleMessage("Имя пользователя"), "vegan_type": MessageLookupByLibrary.simpleMessage("Вегетарианская"), "vegan_type_desc": MessageLookupByLibrary.simpleMessage( - "Диета основана на потреблении растительной пищи и отказе от продуктов животного происхождения. Такой тип питания может быть разнообразным и вкусным, а также полезным для здоровья."), + "Диета основана на потреблении растительной пищи и отказе от продуктов животного происхождения. Такой тип питания может быть разнообразным и вкусным, а также полезным для здоровья.",), "waist": MessageLookupByLibrary.simpleMessage("Талия"), "waist_circumference": MessageLookupByLibrary.simpleMessage("Обхват талии"), @@ -207,7 +207,7 @@ class MessageLookup extends MessageLookupByLibrary { "what_is_your_name": MessageLookupByLibrary.simpleMessage("Как вас зовут?"), "wrong_credentials": MessageLookupByLibrary.simpleMessage( - "Неверные данные пользователя"), + "Неверные данные пользователя",), "your_blood_pressure": MessageLookupByLibrary.simpleMessage("Ваше артериальное давление?"), "your_favorite_sports": @@ -215,6 +215,6 @@ class MessageLookup extends MessageLookupByLibrary { "your_gender": MessageLookupByLibrary.simpleMessage("Ваш пол?"), "your_height": MessageLookupByLibrary.simpleMessage("Ваш рост:"), "your_schedule": MessageLookupByLibrary.simpleMessage("Ваш режим дня?"), - "your_weight": MessageLookupByLibrary.simpleMessage("Ваш вес:") + "your_weight": MessageLookupByLibrary.simpleMessage("Ваш вес:"), }; } diff --git a/lib/generated/l10n.dart b/lib/generated/l10n.dart index 96121d43..9fd1162c 100644 --- a/lib/generated/l10n.dart +++ b/lib/generated/l10n.dart @@ -19,7 +19,7 @@ class S { static S get current { assert(_current != null, - 'No instance of S was loaded. Try to initialize the S delegate before accessing S.current.'); + 'No instance of S was loaded. Try to initialize the S delegate before accessing S.current.',); return _current!; } @@ -42,7 +42,7 @@ class S { static S of(BuildContext context) { final instance = S.maybeOf(context); assert(instance != null, - 'No instance of S present in the widget tree. Did you add S.delegate in localizationsDelegates?'); + 'No instance of S present in the widget tree. Did you add S.delegate in localizationsDelegates?',); return instance!; } From 4752eede0b6e2b38b8a85dfa1922196bff2e6495 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 09:47:18 +0000 Subject: [PATCH 13/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 74 +++++++++++++++++++++------------------ 1 file changed, 39 insertions(+), 35 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index c879c02c..7a15aa16 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -6,6 +6,7 @@ env: flutter_version: "3.24.4" java_version: "21.x" flutter_channel: "stable" + sdk_cache_key: "android-sdk-${{ runner.os }}-${{ hashFiles('**/android/**/*') }}" # Уникальный ключ для кэширования Android SDK jobs: build: @@ -19,37 +20,31 @@ jobs: with: distribution: "zulu" java-version: ${{ env.java_version }} - - - name: Cache Gradle dependencies - uses: actions/cache@v2 - with: - path: ~/.gradle/caches - key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} - restore-keys: | - gradle-${{ runner.os }}- - - - name: Install Android SDK - run: | - apt-get update - apt-get install -y openjdk-11-jdk wget - wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip - unzip commandlinetools.zip - mkdir -p $HOME/Android/Sdk/cmdline-tools/latest - mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ - export ANDROID_SDK_ROOT=$HOME/Android/Sdk - export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true + cache: "gradle" + # Кэширование Android SDK - name: Cache Android SDK - uses: actions/cache@v2 + uses: actions/cache@v3 with: - path: | - $HOME/Android/Sdk - ~/.android - key: android-sdk-${{ runner.os }}-${{ hashFiles('**/build.gradle') }} + path: $HOME/Android/Sdk + key: ${{ env.sdk_cache_key }} restore-keys: | android-sdk-${{ runner.os }}- + - name: Install Android SDK (only if cache is missed) + run: | + if [ ! -d "$HOME/Android/Sdk" ]; then + apt-get update + apt-get install -y openjdk-11-jdk wget + wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip + unzip commandlinetools.zip + mkdir -p $HOME/Android/Sdk/cmdline-tools/latest + mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ + export ANDROID_SDK_ROOT=$HOME/Android/Sdk + export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin + yes | sdkmanager --licenses 2>/dev/null || true + fi + - name: Set up Android environment variables run: | echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV @@ -62,15 +57,12 @@ jobs: echo "ANDROID_HOME: $ANDROID_HOME" echo "PATH: $PATH" - - name: Cache Flutter dependencies - uses: actions/cache@v2 + # Кэширование Flutter SDK + - name: Cache Flutter SDK + uses: actions/cache@v3 with: - path: | - $HOME/.pub-cache - $HOME/.flutter + path: ${{ runner.tool_cache }}/flutter key: flutter-${{ env.flutter_version }}-${{ env.flutter_channel }} - restore-keys: | - flutter-${{ env.flutter_version }}- - name: Install jq run: | @@ -83,6 +75,13 @@ jobs: flutter-version: ${{ env.flutter_version }} cache: true + # Кэширование Flutter зависимостей (pub cache) + - name: Cache Flutter dependencies + uses: actions/cache@v3 + with: + path: ~/.pub-cache + key: flutter-deps-${{ env.flutter_version }}-${{ env.flutter_channel }} + - name: Show cache keys run: | echo CACHE-PATH=${{ steps.flutter-action.outputs.CACHE-PATH }} @@ -91,7 +90,7 @@ jobs: echo VERSION=${{ steps.flutter-action.outputs.VERSION }} echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} - echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} + echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} shell: bash - name: Fix dir permissions @@ -106,11 +105,16 @@ jobs: - name: Native Analyze run: flutter analyze + #- name: Run Code Metrics + # run: flutter pub run dart_code_metrics:metrics lib --disable-sunset-warning --fatal-warnings --fatal-performance + - name: Test - run: flutter test + run: | + flutter test - name: Build apk - run: flutter build apk + run: | + flutter build apk - name: Rename and move apk run: | From ba1426d5ae5d92453f7ad182f8ea4ae127ef1781 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 10:00:14 +0000 Subject: [PATCH 14/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 7a15aa16..359787d7 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -10,7 +10,7 @@ env: jobs: build: - runs-on: ubuntu-latest + runs-on: [shalom] steps: - uses: actions/checkout@v3 From b4422058ca7ac520b395d9e10dd31abafede0d3b Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 10:03:18 +0000 Subject: [PATCH 15/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 359787d7..72ba865a 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -10,7 +10,7 @@ env: jobs: build: - runs-on: [shalom] + runs-on: [dev-office] steps: - uses: actions/checkout@v3 From 1c8f9f871f16bac78e38eed6c8203bcff6f20d30 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 10:14:00 +0000 Subject: [PATCH 16/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 72ba865a..7b9d4ca0 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -6,7 +6,8 @@ env: flutter_version: "3.24.4" java_version: "21.x" flutter_channel: "stable" - sdk_cache_key: "android-sdk-${{ runner.os }}-${{ hashFiles('**/android/**/*') }}" # Уникальный ключ для кэширования Android SDK + sdk_cache_key: "android-sdk-${{ runner.os }}-${{ hashFiles('**/android/**/*') }}" + jdk_cache_key: "jdk-${{ env.java_version }}-${{ runner.os }}" jobs: build: @@ -20,9 +21,16 @@ jobs: with: distribution: "zulu" java-version: ${{ env.java_version }} - cache: "gradle" + id: setup-jdk + + - name: Cache JDK + uses: actions/cache@v3 + with: + path: ~/.m2/repository + key: ${{ env.jdk_cache_key }} + restore-keys: | + jdk-${{ env.java_version }}- - # Кэширование Android SDK - name: Cache Android SDK uses: actions/cache@v3 with: @@ -57,7 +65,6 @@ jobs: echo "ANDROID_HOME: $ANDROID_HOME" echo "PATH: $PATH" - # Кэширование Flutter SDK - name: Cache Flutter SDK uses: actions/cache@v3 with: @@ -75,7 +82,6 @@ jobs: flutter-version: ${{ env.flutter_version }} cache: true - # Кэширование Flutter зависимостей (pub cache) - name: Cache Flutter dependencies uses: actions/cache@v3 with: @@ -90,7 +96,7 @@ jobs: echo VERSION=${{ steps.flutter-action.outputs.VERSION }} echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} - echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} + echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} shell: bash - name: Fix dir permissions @@ -105,9 +111,6 @@ jobs: - name: Native Analyze run: flutter analyze - #- name: Run Code Metrics - # run: flutter pub run dart_code_metrics:metrics lib --disable-sunset-warning --fatal-warnings --fatal-performance - - name: Test run: | flutter test From 6fffed470696949143f79b6de55ae8723827e367 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 10:25:52 +0000 Subject: [PATCH 17/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 7b9d4ca0..ce10dfc3 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -26,7 +26,7 @@ jobs: - name: Cache JDK uses: actions/cache@v3 with: - path: ~/.m2/repository + path: /opt key: ${{ env.jdk_cache_key }} restore-keys: | jdk-${{ env.java_version }}- From d40c49d32b4a4665716b3ccb79f5d61ab7eca3b9 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 10:31:58 +0000 Subject: [PATCH 18/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 45 +-------------------------------------- 1 file changed, 1 insertion(+), 44 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index ce10dfc3..beb27313 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -6,8 +6,6 @@ env: flutter_version: "3.24.4" java_version: "21.x" flutter_channel: "stable" - sdk_cache_key: "android-sdk-${{ runner.os }}-${{ hashFiles('**/android/**/*') }}" - jdk_cache_key: "jdk-${{ env.java_version }}-${{ runner.os }}" jobs: build: @@ -23,25 +21,8 @@ jobs: java-version: ${{ env.java_version }} id: setup-jdk - - name: Cache JDK - uses: actions/cache@v3 - with: - path: /opt - key: ${{ env.jdk_cache_key }} - restore-keys: | - jdk-${{ env.java_version }}- - - - name: Cache Android SDK - uses: actions/cache@v3 - with: - path: $HOME/Android/Sdk - key: ${{ env.sdk_cache_key }} - restore-keys: | - android-sdk-${{ runner.os }}- - - - name: Install Android SDK (only if cache is missed) + - name: Install Android SDK run: | - if [ ! -d "$HOME/Android/Sdk" ]; then apt-get update apt-get install -y openjdk-11-jdk wget wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip @@ -51,7 +32,6 @@ jobs: export ANDROID_SDK_ROOT=$HOME/Android/Sdk export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin yes | sdkmanager --licenses 2>/dev/null || true - fi - name: Set up Android environment variables run: | @@ -65,12 +45,6 @@ jobs: echo "ANDROID_HOME: $ANDROID_HOME" echo "PATH: $PATH" - - name: Cache Flutter SDK - uses: actions/cache@v3 - with: - path: ${{ runner.tool_cache }}/flutter - key: flutter-${{ env.flutter_version }}-${{ env.flutter_channel }} - - name: Install jq run: | apt-get install -y jq @@ -82,23 +56,6 @@ jobs: flutter-version: ${{ env.flutter_version }} cache: true - - name: Cache Flutter dependencies - uses: actions/cache@v3 - with: - path: ~/.pub-cache - key: flutter-deps-${{ env.flutter_version }}-${{ env.flutter_channel }} - - - name: Show cache keys - run: | - echo CACHE-PATH=${{ steps.flutter-action.outputs.CACHE-PATH }} - echo CACHE-KEY=${{ steps.flutter-action.outputs.CACHE-KEY }} - echo CHANNEL=${{ steps.flutter-action.outputs.CHANNEL }} - echo VERSION=${{ steps.flutter-action.outputs.VERSION }} - echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} - echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} - echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} - shell: bash - - name: Fix dir permissions run: | git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} From beec890fe10a91127700ffc325e262b3ee864a53 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 14:25:03 +0300 Subject: [PATCH 19/95] fix: jq remove --- .gitea/workflows/test.yml | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index beb27313..dd78efe9 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -39,16 +39,6 @@ jobs: echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV - - name: Debug Environment Variables - run: | - echo "ANDROID_SDK_ROOT: $ANDROID_SDK_ROOT" - echo "ANDROID_HOME: $ANDROID_HOME" - echo "PATH: $PATH" - - - name: Install jq - run: | - apt-get install -y jq - - id: flutter-action uses: actions/flutter-action@v2 with: From 0cf9110247cec18345bd4b77f3e9a076054d37ee Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 14:30:55 +0300 Subject: [PATCH 20/95] fix: jq revert --- .gitea/workflows/test.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index dd78efe9..d5c5797f 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -39,6 +39,11 @@ jobs: echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV + + - name: Install jq + run: | + apt-get install -y jq + - id: flutter-action uses: actions/flutter-action@v2 with: From 4a8ff3085d2608fcf1045b281bbe52922f1f4c6c Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:05:34 +0300 Subject: [PATCH 21/95] fix: diary + cache --- .gitea/workflows/test.yml | 52 ++++++++++++------- .../diary/presentation/bloc/diary_cubit.dart | 2 +- .../diary/repositories/diary_repository.dart | 9 ++-- .../diary/services/diary_service.dart | 3 +- .../diary/services/diary_service.g.dart | 13 +++-- 5 files changed, 46 insertions(+), 33 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index d5c5797f..81cc2a94 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -3,35 +3,53 @@ name: Eatvio App Android Test on: [ pull_request ] env: - flutter_version: "3.24.4" + flutter_version: "3.24.5" java_version: "21.x" flutter_channel: "stable" jobs: build: - runs-on: [dev-office] + runs-on: [ dev-office ] + env: + key: "cache-v1" steps: - uses: actions/checkout@v3 + - name: Setup cache environment + id: extcache + uses: https://github.com/shivammathur/cache-extensions@v1 + with: + key: ${{ env.key }} + - name: Set up JDK uses: actions/setup-java@v3 with: distribution: "zulu" java-version: ${{ env.java_version }} - id: setup-jdk + + - name: Manage Android SDK cache + uses: actions/cache@v3 + with: + path: | + $HOME/Android/Sdk/cmdline-tools/latest/ + $HOME/Android/Sdk + $HOME/Android/Sdk/cmdline-tools/latest/bin + + key: ${{ steps.extcache.outputs.key }} - name: Install Android SDK run: | - apt-get update - apt-get install -y openjdk-11-jdk wget - wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip - unzip commandlinetools.zip - mkdir -p $HOME/Android/Sdk/cmdline-tools/latest - mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ - export ANDROID_SDK_ROOT=$HOME/Android/Sdk - export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true + apt-get update + apt-get install -y openjdk-11-jdk wget + wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip + unzip commandlinetools.zip + mkdir -p $HOME/Android/Sdk/cmdline-tools/latest + mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ + export ANDROID_SDK_ROOT=$HOME/Android/Sdk + export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin + yes | sdkmanager --licenses 2>/dev/null || true + - name: Set up Android environment variables run: | @@ -39,10 +57,8 @@ jobs: echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV - - name: Install jq - run: | - apt-get install -y jq + run: apt-get install -y jq - id: flutter-action uses: actions/flutter-action@v2 @@ -64,12 +80,10 @@ jobs: run: flutter analyze - name: Test - run: | - flutter test + run: flutter test - name: Build apk - run: | - flutter build apk + run: flutter build apk - name: Rename and move apk run: | diff --git a/lib/features/diary/presentation/bloc/diary_cubit.dart b/lib/features/diary/presentation/bloc/diary_cubit.dart index 74df5385..0c243ac4 100644 --- a/lib/features/diary/presentation/bloc/diary_cubit.dart +++ b/lib/features/diary/presentation/bloc/diary_cubit.dart @@ -25,7 +25,7 @@ class DiaryCubit extends Cubit { emit( DiaryState.loaded( diary: await diaryRepository.getDiaryByDate(date), - nutrition: await getNutrition(await diaryRepository.getDiaryIndexByDate(date)), + nutrition: await getNutrition((await diaryRepository.getDiaryByDate(date)).id), currentSelectedSatietyRating: currentSelectedSatietyRating, ), ); diff --git a/lib/features/diary/repositories/diary_repository.dart b/lib/features/diary/repositories/diary_repository.dart index 42f352f1..3db06d6f 100644 --- a/lib/features/diary/repositories/diary_repository.dart +++ b/lib/features/diary/repositories/diary_repository.dart @@ -11,14 +11,11 @@ class DiaryRepository { }); Future getDiaryByDate(String date) async { - return (await diaryService.getDiaryDay( - index: await getDiaryIndexByDate(date), - )) - .diary; + return (await getDiaryIndexByDate(date)).last; } - Future getDiaryIndexByDate(String date) async { - return (await diaryService.getDiaryIndexByDate(date: date)).id; + Future> getDiaryIndexByDate(String date) async { + return (await diaryService.getDiaryIndexByDate(date: date)); } Future getNutritionData(int index) async { diff --git a/lib/features/diary/services/diary_service.dart b/lib/features/diary/services/diary_service.dart index 833f9604..d4edd406 100644 --- a/lib/features/diary/services/diary_service.dart +++ b/lib/features/diary/services/diary_service.dart @@ -1,7 +1,6 @@ import 'dart:io'; import 'package:dio/dio.dart'; import 'package:eatvio_app/features/diary/models/diary_day_model.dart'; -import 'package:eatvio_app/features/diary/models/diary_index_model.dart'; import 'package:eatvio_app/features/diary/models/nutrition_model.dart'; import 'package:retrofit/retrofit.dart'; @@ -12,7 +11,7 @@ abstract class DiaryService { factory DiaryService(Dio dio, {String baseUrl}) = _DiaryService; @GET('/api/diary/index/{date}') - Future getDiaryIndexByDate({ + Future> getDiaryIndexByDate({ @Path('date') required String date, // yyyy-mm-dd }); diff --git a/lib/features/diary/services/diary_service.g.dart b/lib/features/diary/services/diary_service.g.dart index 03fa20ed..816c7fb5 100644 --- a/lib/features/diary/services/diary_service.g.dart +++ b/lib/features/diary/services/diary_service.g.dart @@ -22,12 +22,13 @@ class _DiaryService implements DiaryService { final ParseErrorLogger? errorLogger; @override - Future getDiaryIndexByDate({required String date}) async { + Future> getDiaryIndexByDate( + {required String date}) async { final _extra = {}; final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( + final _options = _setStreamType>(Options( method: 'GET', headers: _headers, extra: _extra, @@ -43,10 +44,12 @@ class _DiaryService implements DiaryService { _dio.options.baseUrl, baseUrl, ))); - final _result = await _dio.fetch>(_options); - late DiaryIndexModel _value; + final _result = await _dio.fetch>(_options); + late List _value; try { - _value = DiaryIndexModel.fromJson(_result.data!); + _value = _result.data! + .map((dynamic i) => DiaryDayModel.fromJson(i as Map)) + .toList(); } on Object catch (e, s) { errorLogger?.logError(e, s, _options); rethrow; From 7b842c22d4a8dc48a065f6e17fb36344d2e77ca6 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:08:26 +0300 Subject: [PATCH 22/95] fix: cache --- .gitea/workflows/test.yml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 81cc2a94..cfc2d2a1 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -14,7 +14,17 @@ jobs: key: "cache-v1" steps: - - uses: actions/checkout@v3 + - uses: "actions/checkout@v3" + + - name: Set proxy server + run: | + cat </etc/apt/apt.conf.d/proxy.conf + Acquire::http::Proxy "socks5h://ohyi7eew5ieP:buKakoh1mequ@10.55.5.202:19843/"; + EOF + + - name: Update system + run: | + apt -y update - name: Setup cache environment id: extcache From 61318fee6a8a9dda67933f1a929f98fe60a5cdbd Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:09:02 +0300 Subject: [PATCH 23/95] fix: cache 2 --- .gitea/workflows/test.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index cfc2d2a1..97ad8944 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -23,8 +23,7 @@ jobs: EOF - name: Update system - run: | - apt -y update + run: apt-get update - name: Setup cache environment id: extcache From 4d72eb2c395634c080ba4d4ec8400104dda3a963 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:09:39 +0300 Subject: [PATCH 24/95] fix: cache 3 --- .gitea/workflows/test.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 97ad8944..9682e8d3 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -6,12 +6,11 @@ env: flutter_version: "3.24.5" java_version: "21.x" flutter_channel: "stable" + key: "cache-v1" jobs: build: runs-on: [ dev-office ] - env: - key: "cache-v1" steps: - uses: "actions/checkout@v3" From d1476c685b5cec1408b1b4875fa60b48f8417ad7 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:10:27 +0300 Subject: [PATCH 25/95] fix: cache 4 --- .gitea/workflows/test.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 9682e8d3..a0816321 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -2,16 +2,16 @@ name: Eatvio App Android Test on: [ pull_request ] -env: - flutter_version: "3.24.5" - java_version: "21.x" - flutter_channel: "stable" - key: "cache-v1" - jobs: build: runs-on: [ dev-office ] + env: + flutter_version: "3.24.5" + java_version: "21.x" + flutter_channel: "stable" + key: "cache-v1" + steps: - uses: "actions/checkout@v3" From 07054b2ea4e14003d172242912ef91f37643d02d Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:10:51 +0300 Subject: [PATCH 26/95] fix: cache 5 --- .gitea/workflows/test.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index a0816321..a83cafb9 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -15,12 +15,6 @@ jobs: steps: - uses: "actions/checkout@v3" - - name: Set proxy server - run: | - cat </etc/apt/apt.conf.d/proxy.conf - Acquire::http::Proxy "socks5h://ohyi7eew5ieP:buKakoh1mequ@10.55.5.202:19843/"; - EOF - - name: Update system run: apt-get update From 48c3bc99161497cd9baa521cb5d7eb3f786949ed Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:12:10 +0300 Subject: [PATCH 27/95] fix: cache 6 --- .gitea/workflows/test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index a83cafb9..8016d4aa 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -22,6 +22,7 @@ jobs: id: extcache uses: https://github.com/shivammathur/cache-extensions@v1 with: + extensions: ${{ env.extensions }} key: ${{ env.key }} - name: Set up JDK From a37b72212db54f70cf07b9f5924cff5e09cbfe90 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:12:59 +0300 Subject: [PATCH 28/95] fix: cache 7 --- .gitea/workflows/test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 8016d4aa..86a2902d 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -7,6 +7,7 @@ jobs: runs-on: [ dev-office ] env: + extensions: gd flutter_version: "3.24.5" java_version: "21.x" flutter_channel: "stable" From 3a3b3e8fc67bbfade3f52402cd58d63f2bb79460 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:24:49 +0300 Subject: [PATCH 29/95] fix: cache 8 --- .gitea/workflows/test.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 86a2902d..ca81939c 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -36,9 +36,10 @@ jobs: uses: actions/cache@v3 with: path: | - $HOME/Android/Sdk/cmdline-tools/latest/ - $HOME/Android/Sdk - $HOME/Android/Sdk/cmdline-tools/latest/bin + /root/Android/Sdk/cmdline-tools/latest/ + /root/Android/Sdk + /root/Android/Sdk/cmdline-tools/latest/bin + /root/Android/Sdk/ key: ${{ steps.extcache.outputs.key }} From 08cd0a89c02f6843b9a30ce4335db6a8641d9260 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:33:24 +0300 Subject: [PATCH 30/95] fix: cache 9 --- .gitea/workflows/test.yml | 60 +++++++++++++++++---------------------- 1 file changed, 26 insertions(+), 34 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index ca81939c..45a2d5af 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -1,30 +1,29 @@ name: Eatvio App Android Test -on: [ pull_request ] +on: [pull_request] jobs: build: - runs-on: [ dev-office ] + runs-on: [dev-office] env: extensions: gd flutter_version: "3.24.5" java_version: "21.x" flutter_channel: "stable" - key: "cache-v1" steps: - - uses: "actions/checkout@v3" + - name: Checkout code + uses: actions/checkout@v3 - name: Update system run: apt-get update - - name: Setup cache environment - id: extcache - uses: https://github.com/shivammathur/cache-extensions@v1 + - name: Cache JDK + uses: actions/cache@v3 with: - extensions: ${{ env.extensions }} - key: ${{ env.key }} + path: ~/.sdkman/candidates/java + key: jdk-${{ env.java_version }} - name: Set up JDK uses: actions/setup-java@v3 @@ -32,38 +31,32 @@ jobs: distribution: "zulu" java-version: ${{ env.java_version }} - - name: Manage Android SDK cache + - name: Cache Android SDK uses: actions/cache@v3 with: path: | - /root/Android/Sdk/cmdline-tools/latest/ - /root/Android/Sdk - /root/Android/Sdk/cmdline-tools/latest/bin - /root/Android/Sdk/ - - key: ${{ steps.extcache.outputs.key }} + $HOME/Android/Sdk + key: android-sdk-${{ runner.os }}-${{ hashFiles('**/build.gradle') }} - name: Install Android SDK run: | - apt-get update - apt-get install -y openjdk-11-jdk wget - wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip - unzip commandlinetools.zip mkdir -p $HOME/Android/Sdk/cmdline-tools/latest - mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ + wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip + unzip commandlinetools.zip -d $HOME/Android/Sdk/cmdline-tools/latest/ export ANDROID_SDK_ROOT=$HOME/Android/Sdk - export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true - + yes | $HOME/Android/Sdk/cmdline-tools/latest/bin/sdkmanager --licenses || true - name: Set up Android environment variables run: | echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV + echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools" >> $GITHUB_ENV echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV - - name: Install jq - run: apt-get install -y jq + - name: Cache Flutter + uses: actions/cache@v3 + with: + path: ~/.flutter + key: flutter-${{ env.flutter_channel }}-${{ env.flutter_version }} - id: flutter-action uses: actions/flutter-action@v2 @@ -72,30 +65,29 @@ jobs: flutter-version: ${{ env.flutter_version }} cache: true - - name: Fix dir permissions + - name: Fix directory permissions and run Flutter doctor run: | - git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} flutter config --android-sdk="$ANDROID_HOME" flutter doctor -v - name: Get dependencies run: flutter pub get - - name: Native Analyze + - name: Analyze code run: flutter analyze - - name: Test + - name: Run tests run: flutter test - - name: Build apk + - name: Build APK run: flutter build apk - - name: Rename and move apk + - name: Rename and move APK run: | TIMESTAMP=$(date +'%Y-%m-%d-%H-%M') APK_NAME="eatvio_app_${TIMESTAMP}.apk" mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME - echo "APK build finished $APK_NAME" + echo "APK build finished: $APK_NAME" echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV - name: Upload APK artifact From 85853edc2f65221b9bd756a0291ca3fe18cc23ee Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:35:04 +0300 Subject: [PATCH 31/95] fix: cache 10 --- .gitea/workflows/test.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 45a2d5af..6d3335e9 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -19,6 +19,9 @@ jobs: - name: Update system run: apt-get update + - name: Install jq + run: apt-get install -y jq + - name: Cache JDK uses: actions/cache@v3 with: From a3ce0b08e04d651a066c00ed8023a653045ef4c3 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:37:25 +0300 Subject: [PATCH 32/95] fix: cache 11 --- .gitea/workflows/test.yml | 84 +++++++++++++++++++++------------------ 1 file changed, 45 insertions(+), 39 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 6d3335e9..d4f6f724 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -1,100 +1,106 @@ name: Eatvio App Android Test -on: [pull_request] +on: [ pull_request ] jobs: build: - runs-on: [dev-office] + runs-on: [ dev-office ] env: extensions: gd flutter_version: "3.24.5" java_version: "21.x" flutter_channel: "stable" + key: "cache-v1" + ANDROID_HOME: /root/Android/Sdk + SDK_CACHE_DIR: /root/Android/Sdk/ steps: - - name: Checkout code - uses: actions/checkout@v3 + - uses: actions/checkout@v3 - name: Update system run: apt-get update - - name: Install jq - run: apt-get install -y jq - - - name: Cache JDK - uses: actions/cache@v3 + - name: Setup cache environment + id: extcache + uses: https://github.com/shivammathur/cache-extensions@v1 with: - path: ~/.sdkman/candidates/java - key: jdk-${{ env.java_version }} + extensions: ${{ env.extensions }} + key: ${{ env.key }} + - name: Set up JDK uses: actions/setup-java@v3 with: - distribution: "zulu" + distribution: zulu java-version: ${{ env.java_version }} - name: Cache Android SDK uses: actions/cache@v3 with: - path: | - $HOME/Android/Sdk - key: android-sdk-${{ runner.os }}-${{ hashFiles('**/build.gradle') }} + path: ${{ env.SDK_CACHE_DIR }} + key: ${{ steps.extcache.outputs.key }}-android-sdk-${{ env.java_version }}-${{ runner.os }} + restore-keys: | + ${{ steps.extcache.outputs.key }}-android-sdk-* - - name: Install Android SDK + - name: Install Android SDK Command Line Tools run: | - mkdir -p $HOME/Android/Sdk/cmdline-tools/latest - wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip - unzip commandlinetools.zip -d $HOME/Android/Sdk/cmdline-tools/latest/ - export ANDROID_SDK_ROOT=$HOME/Android/Sdk - yes | $HOME/Android/Sdk/cmdline-tools/latest/bin/sdkmanager --licenses || true + apt-get update + apt-get install -y wget openjdk-11-jdk + wget -qO - https://dl.google.com/android/repository/commandlinetools-linux-latest.zip | \ + unzip -d "$HOME/Android/Sdk/cmdline-tools" + export ANDROID_HOME="${ANDROID_HOME}" + export PATH="$PATH:${ANDROID_HOME}/cmdline-tools/latest/bin" + sdkmanager --licenses - name: Set up Android environment variables run: | - echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools" >> $GITHUB_ENV - echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV + echo "$ANDROID_HOME" >> $GITHUB_ENV + echo "PATH=$PATH:$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/30.0.3" >> $GITHUB_ENV # Corrected path - - name: Cache Flutter - uses: actions/cache@v3 - with: - path: ~/.flutter - key: flutter-${{ env.flutter_channel }}-${{ env.flutter_version }} + - name: Install jq + run: apt-get install -y jq - - id: flutter-action + - name: Set up Flutter uses: actions/flutter-action@v2 with: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} cache: true + architecture: ${{ runner.os }}-x64 - - name: Fix directory permissions and run Flutter doctor + + - name: Fix dir permissions (Avoids potential issues) run: | + #This is no longer needed if flutter-action@v2 uses appropriate caching + #Remove this step or add specific checks flutter config --android-sdk="$ANDROID_HOME" flutter doctor -v + - name: Get dependencies run: flutter pub get - - name: Analyze code + - name: Native Analyze run: flutter analyze - - name: Run tests + - name: Test run: flutter test - - name: Build APK - run: flutter build apk + - name: Build apk + run: flutter build apk --split-per-abi - - name: Rename and move APK + - name: Rename and move apk run: | TIMESTAMP=$(date +'%Y-%m-%d-%H-%M') APK_NAME="eatvio_app_${TIMESTAMP}.apk" - mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME - echo "APK build finished: $APK_NAME" + mv build/app/outputs/flutter-apk/app-release.apk "$APK_NAME" + echo "APK build finished $APK_NAME" echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV + - name: Upload APK artifact uses: actions/upload-artifact@v3 with: name: ${{ env.APK_NAME }} - path: ${{ env.APK_NAME }} + path: ${{ env.APK_NAME }} \ No newline at end of file From 2a7df1a35c4914afa9ed1a5fed352eb3be935ee4 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:39:41 +0300 Subject: [PATCH 33/95] fix: revert --- .gitea/workflows/test.yml | 87 +++++++++++++++------------------------ 1 file changed, 33 insertions(+), 54 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index d4f6f724..c7c530b8 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -2,81 +2,59 @@ name: Eatvio App Android Test on: [ pull_request ] +env: + flutter_version: "3.24.5" + java_version: "21.x" + flutter_channel: "stable" + jobs: build: - runs-on: [ dev-office ] - - env: - extensions: gd - flutter_version: "3.24.5" - java_version: "21.x" - flutter_channel: "stable" - key: "cache-v1" - ANDROID_HOME: /root/Android/Sdk - SDK_CACHE_DIR: /root/Android/Sdk/ + runs-on: [dev-office] steps: - uses: actions/checkout@v3 - - name: Update system - run: apt-get update - - - name: Setup cache environment - id: extcache - uses: https://github.com/shivammathur/cache-extensions@v1 - with: - extensions: ${{ env.extensions }} - key: ${{ env.key }} - - - name: Set up JDK uses: actions/setup-java@v3 with: - distribution: zulu + distribution: "zulu" java-version: ${{ env.java_version }} + id: setup-jdk - - name: Cache Android SDK - uses: actions/cache@v3 - with: - path: ${{ env.SDK_CACHE_DIR }} - key: ${{ steps.extcache.outputs.key }}-android-sdk-${{ env.java_version }}-${{ runner.os }} - restore-keys: | - ${{ steps.extcache.outputs.key }}-android-sdk-* - - - name: Install Android SDK Command Line Tools + - name: Install Android SDK run: | apt-get update - apt-get install -y wget openjdk-11-jdk - wget -qO - https://dl.google.com/android/repository/commandlinetools-linux-latest.zip | \ - unzip -d "$HOME/Android/Sdk/cmdline-tools" - export ANDROID_HOME="${ANDROID_HOME}" - export PATH="$PATH:${ANDROID_HOME}/cmdline-tools/latest/bin" - sdkmanager --licenses + apt-get install -y openjdk-11-jdk wget + wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip + unzip commandlinetools.zip + mkdir -p $HOME/Android/Sdk/cmdline-tools/latest + mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ + export ANDROID_SDK_ROOT=$HOME/Android/Sdk + export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin + yes | sdkmanager --licenses 2>/dev/null || true - name: Set up Android environment variables run: | - echo "$ANDROID_HOME" >> $GITHUB_ENV - echo "PATH=$PATH:$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/30.0.3" >> $GITHUB_ENV # Corrected path + echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV + echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV + echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV - name: Install jq - run: apt-get install -y jq + run: | + apt-get install -y jq - - name: Set up Flutter + - id: flutter-action uses: actions/flutter-action@v2 with: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} cache: true - architecture: ${{ runner.os }}-x64 - - - name: Fix dir permissions (Avoids potential issues) + - name: Fix dir permissions run: | - #This is no longer needed if flutter-action@v2 uses appropriate caching - #Remove this step or add specific checks + git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} flutter config --android-sdk="$ANDROID_HOME" - flutter doctor -v - + flutter doctor -v - name: Get dependencies run: flutter pub get @@ -85,22 +63,23 @@ jobs: run: flutter analyze - name: Test - run: flutter test + run: | + flutter test - name: Build apk - run: flutter build apk --split-per-abi + run: | + flutter build apk - name: Rename and move apk run: | TIMESTAMP=$(date +'%Y-%m-%d-%H-%M') APK_NAME="eatvio_app_${TIMESTAMP}.apk" - mv build/app/outputs/flutter-apk/app-release.apk "$APK_NAME" + mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME echo "APK build finished $APK_NAME" - echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV - + echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV - name: Upload APK artifact uses: actions/upload-artifact@v3 with: name: ${{ env.APK_NAME }} - path: ${{ env.APK_NAME }} \ No newline at end of file + path: ${{ env.APK_NAME }} From ad34497019cc418f76bdb808e80e2f2d3665246d Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:41:06 +0300 Subject: [PATCH 34/95] fix: try --- .gitea/workflows/test.yml | 88 +++++++++++++++++++++++++++------------ 1 file changed, 61 insertions(+), 27 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index c7c530b8..93e76b48 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -6,55 +6,91 @@ env: flutter_version: "3.24.5" java_version: "21.x" flutter_channel: "stable" + ANDROID_SDK_ROOT: /root/Android/Sdk # Define this consistently + ANDROID_HOME: ${{ env.ANDROID_SDK_ROOT }} # Link ANDROID_HOME to ANDROID_SDK_ROOT + CACHE_KEY: ${{ runner.os }}-jdk-${{ env.java_version }}-flutter-${{ env.flutter_version }} jobs: build: - runs-on: [dev-office] + runs-on: [ dev-office ] steps: - uses: actions/checkout@v3 + - name: Cache JDK + uses: actions/cache@v3 + with: + path: ${{ env.JDK_HOME }} # You'll need to define JDK_HOME in a subsequent step + key: ${{ env.CACHE_KEY }}-jdk + restore-keys: | + ${{ env.CACHE_KEY }}-jdk- + - name: Set up JDK uses: actions/setup-java@v3 with: distribution: "zulu" java-version: ${{ env.java_version }} - id: setup-jdk + id: setup-jdk + # Set the JDK_HOME after the JDK installation. + # This is necessary for caching. + run: | + echo "JDK_HOME=$(echo "${{ steps.setup-jdk.outputs.java-home }}")" >> $GITHUB_ENV - - name: Install Android SDK + + - name: Cache Android SDK, NDK & CMake + uses: actions/cache@v3 + with: + path: ${{ env.ANDROID_SDK_ROOT }} + key: ${{ env.CACHE_KEY }}-android + restore-keys: | + ${{ env.CACHE_KEY }}-android- + + + - name: Install Android SDK, NDK and CMake (if needed) + if: steps.cache-android.outputs.cache-hit != 'true' run: | apt-get update - apt-get install -y openjdk-11-jdk wget - wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip + apt-get install -y wget zip + wget https://dl.google.com/android/repository/commandlinetools-linux-latest.zip -O commandlinetools.zip unzip commandlinetools.zip - mkdir -p $HOME/Android/Sdk/cmdline-tools/latest - mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ - export ANDROID_SDK_ROOT=$HOME/Android/Sdk - export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true + mkdir -p "$ANDROID_SDK_ROOT/cmdline-tools/latest" + mv cmdline-tools/* "$ANDROID_SDK_ROOT/cmdline-tools/latest/" + yes | "$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager" --licenses 2>/dev/null || true + # Install NDK and CMake if you need them. Add the commands here (example) + # yes | "$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager" "ndk;cmake" 2>/dev/null || true + - name: Set up Android environment variables run: | - echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV - echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV + echo "ANDROID_SDK_ROOT=${{ env.ANDROID_SDK_ROOT }}" >> $GITHUB_ENV + echo "PATH=$PATH:${{ env.ANDROID_SDK_ROOT }}/cmdline-tools/latest/bin:${{ env.ANDROID_SDK_ROOT }}/platform-tools:${{ env.ANDROID_SDK_ROOT }}/build-tools/30.0.3" >> $GITHUB_ENV + echo "ANDROID_HOME=${{ env.ANDROID_HOME }}" >> $GITHUB_ENV + - name: Install jq - run: | - apt-get install -y jq + run: apt-get install -y jq - - id: flutter-action + - name: Cache Flutter + uses: actions/cache@v3 + with: + path: ~/.flutter + key: ${{ env.CACHE_KEY }}-flutter + restore-keys: | + ${{ env.CACHE_KEY }}-flutter- + + + - name: Set up Flutter uses: actions/flutter-action@v2 with: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} - cache: true + cache: true # This is redundant because we use actions/cache above - - name: Fix dir permissions + + - name: Fix dir permissions (Often unnecessary with actions/flutter-action) run: | - git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} flutter config --android-sdk="$ANDROID_HOME" - flutter doctor -v + flutter doctor -v - name: Get dependencies run: flutter pub get @@ -63,23 +99,21 @@ jobs: run: flutter analyze - name: Test - run: | - flutter test + run: flutter test - name: Build apk - run: | - flutter build apk + run: flutter build apk --split-per-abi - name: Rename and move apk run: | TIMESTAMP=$(date +'%Y-%m-%d-%H-%M') APK_NAME="eatvio_app_${TIMESTAMP}.apk" - mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME + mv build/app/outputs/flutter-apk/app-release.apk "$APK_NAME" echo "APK build finished $APK_NAME" - echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV + echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV - name: Upload APK artifact uses: actions/upload-artifact@v3 with: name: ${{ env.APK_NAME }} - path: ${{ env.APK_NAME }} + path: ${{ env.APK_NAME }} \ No newline at end of file From 57065bd3d58a2c3f65eaa6e29e5c7ea98c628bcd Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:45:38 +0300 Subject: [PATCH 35/95] fix: try2 --- .gitea/workflows/test.yml | 85 +++++++++++++++++---------------------- 1 file changed, 36 insertions(+), 49 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 93e76b48..598dffb5 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -6,91 +6,76 @@ env: flutter_version: "3.24.5" java_version: "21.x" flutter_channel: "stable" - ANDROID_SDK_ROOT: /root/Android/Sdk # Define this consistently - ANDROID_HOME: ${{ env.ANDROID_SDK_ROOT }} # Link ANDROID_HOME to ANDROID_SDK_ROOT - CACHE_KEY: ${{ runner.os }}-jdk-${{ env.java_version }}-flutter-${{ env.flutter_version }} jobs: build: - runs-on: [ dev-office ] + runs-on: [dev-office] steps: - uses: actions/checkout@v3 + # Кэширование JDK - name: Cache JDK uses: actions/cache@v3 with: - path: ${{ env.JDK_HOME }} # You'll need to define JDK_HOME in a subsequent step - key: ${{ env.CACHE_KEY }}-jdk - restore-keys: | - ${{ env.CACHE_KEY }}-jdk- + path: ~/.cache/zulu + key: ${{ runner.os }}-zulu-${{ hashFiles('**/pom.xml') }} # Или любой файл для определения изменения - name: Set up JDK uses: actions/setup-java@v3 with: distribution: "zulu" java-version: ${{ env.java_version }} - id: setup-jdk - # Set the JDK_HOME after the JDK installation. - # This is necessary for caching. - run: | - echo "JDK_HOME=$(echo "${{ steps.setup-jdk.outputs.java-home }}")" >> $GITHUB_ENV + id: setup-jdk - - - name: Cache Android SDK, NDK & CMake + # Кэширование Android SDK + - name: Cache Android SDK uses: actions/cache@v3 with: - path: ${{ env.ANDROID_SDK_ROOT }} - key: ${{ env.CACHE_KEY }}-android - restore-keys: | - ${{ env.CACHE_KEY }}-android- + path: $HOME/Android/Sdk + key: ${{ runner.os }}-android-sdk-${{ hashFiles('**/build.gradle') }} # Укажите файл для хеширования - - - name: Install Android SDK, NDK and CMake (if needed) - if: steps.cache-android.outputs.cache-hit != 'true' + - name: Install Android SDK run: | apt-get update - apt-get install -y wget zip - wget https://dl.google.com/android/repository/commandlinetools-linux-latest.zip -O commandlinetools.zip + apt-get install -y openjdk-11-jdk wget + wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip unzip commandlinetools.zip - mkdir -p "$ANDROID_SDK_ROOT/cmdline-tools/latest" - mv cmdline-tools/* "$ANDROID_SDK_ROOT/cmdline-tools/latest/" - yes | "$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager" --licenses 2>/dev/null || true - # Install NDK and CMake if you need them. Add the commands here (example) - # yes | "$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager" "ndk;cmake" 2>/dev/null || true - + mkdir -p $HOME/Android/Sdk/cmdline-tools/latest + mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ + export ANDROID_SDK_ROOT=$HOME/Android/Sdk + export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin + yes | sdkmanager --licenses 2>/dev/null || true - name: Set up Android environment variables run: | - echo "ANDROID_SDK_ROOT=${{ env.ANDROID_SDK_ROOT }}" >> $GITHUB_ENV - echo "PATH=$PATH:${{ env.ANDROID_SDK_ROOT }}/cmdline-tools/latest/bin:${{ env.ANDROID_SDK_ROOT }}/platform-tools:${{ env.ANDROID_SDK_ROOT }}/build-tools/30.0.3" >> $GITHUB_ENV - echo "ANDROID_HOME=${{ env.ANDROID_HOME }}" >> $GITHUB_ENV - + echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV + echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV + echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV - name: Install jq - run: apt-get install -y jq + run: | + apt-get install -y jq + # Кэширование Flutter SDK - name: Cache Flutter uses: actions/cache@v3 with: - path: ~/.flutter - key: ${{ env.CACHE_KEY }}-flutter - restore-keys: | - ${{ env.CACHE_KEY }}-flutter- + path: ~/.pub-cache + key: ${{ runner.os }}-flutter-${{ env.flutter_version }}-${{ hashFiles('**/pubspec.yaml') }} # Укажите файл для хеширования - - - name: Set up Flutter + - id: flutter-action uses: actions/flutter-action@v2 with: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} - cache: true # This is redundant because we use actions/cache above + cache: true - - - name: Fix dir permissions (Often unnecessary with actions/flutter-action) + - name: Fix dir permissions run: | + git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} flutter config --android-sdk="$ANDROID_HOME" - flutter doctor -v + flutter doctor -v - name: Get dependencies run: flutter pub get @@ -99,18 +84,20 @@ jobs: run: flutter analyze - name: Test - run: flutter test + run: | + flutter test - name: Build apk - run: flutter build apk --split-per-abi + run: | + flutter build apk - name: Rename and move apk run: | TIMESTAMP=$(date +'%Y-%m-%d-%H-%M') APK_NAME="eatvio_app_${TIMESTAMP}.apk" - mv build/app/outputs/flutter-apk/app-release.apk "$APK_NAME" + mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME echo "APK build finished $APK_NAME" - echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV + echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV - name: Upload APK artifact uses: actions/upload-artifact@v3 From e1f83adecaba443d02a1d2f2f31adf535e4ddb59 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:50:09 +0300 Subject: [PATCH 36/95] fix: =o1 --- .gitea/workflows/test.yml | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 598dffb5..d85aff23 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -14,12 +14,11 @@ jobs: steps: - uses: actions/checkout@v3 - # Кэширование JDK - name: Cache JDK uses: actions/cache@v3 with: path: ~/.cache/zulu - key: ${{ runner.os }}-zulu-${{ hashFiles('**/pom.xml') }} # Или любой файл для определения изменения + key: ${{ runner.os }}-jdk-${{ hashFiles('**/gradle-wrapper.properties') }} - name: Set up JDK uses: actions/setup-java@v3 @@ -28,12 +27,13 @@ jobs: java-version: ${{ env.java_version }} id: setup-jdk - # Кэширование Android SDK - name: Cache Android SDK uses: actions/cache@v3 with: path: $HOME/Android/Sdk - key: ${{ runner.os }}-android-sdk-${{ hashFiles('**/build.gradle') }} # Укажите файл для хеширования + key: ${{ runner.os }}-android-sdk-${{ hashFiles('**/gradle-wrapper.properties') }} + restore-keys: | + ${{ runner.os }}-android-sdk- - name: Install Android SDK run: | @@ -57,13 +57,6 @@ jobs: run: | apt-get install -y jq - # Кэширование Flutter SDK - - name: Cache Flutter - uses: actions/cache@v3 - with: - path: ~/.pub-cache - key: ${{ runner.os }}-flutter-${{ env.flutter_version }}-${{ hashFiles('**/pubspec.yaml') }} # Укажите файл для хеширования - - id: flutter-action uses: actions/flutter-action@v2 with: From db256d3e0aadf5ff3b4ff0d91995a6c68bfa3b33 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:51:10 +0300 Subject: [PATCH 37/95] fix: =o12 --- .gitea/workflows/test.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index d85aff23..ced9158d 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -18,7 +18,7 @@ jobs: uses: actions/cache@v3 with: path: ~/.cache/zulu - key: ${{ runner.os }}-jdk-${{ hashFiles('**/gradle-wrapper.properties') }} + key: jdk-${{ runner.os }}-${{ hashFiles('**/gradle-wrapper.properties') }} - name: Set up JDK uses: actions/setup-java@v3 @@ -31,9 +31,9 @@ jobs: uses: actions/cache@v3 with: path: $HOME/Android/Sdk - key: ${{ runner.os }}-android-sdk-${{ hashFiles('**/gradle-wrapper.properties') }} + key: android-sdk-${{ runner.os }}-${{ hashFiles('**/gradle-wrapper.properties') }} restore-keys: | - ${{ runner.os }}-android-sdk- + android-sdk-${{ runner.os }}- - name: Install Android SDK run: | From e482e1b6f95e4176f4b01f19eaa5e3d2cd1cdd31 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:52:21 +0300 Subject: [PATCH 38/95] fix: =o122 --- .gitea/workflows/test.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index ced9158d..5b9f999e 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -18,8 +18,7 @@ jobs: uses: actions/cache@v3 with: path: ~/.cache/zulu - key: jdk-${{ runner.os }}-${{ hashFiles('**/gradle-wrapper.properties') }} - + key: jdk-${{ runner.os }}-java-${{ env.java_version }} - name: Set up JDK uses: actions/setup-java@v3 with: From 32891fee5aba2183d6c62b3365d1b211c215c935 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:53:44 +0300 Subject: [PATCH 39/95] fix: =o1223 --- .gitea/workflows/test.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 5b9f999e..37ceed52 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -19,6 +19,7 @@ jobs: with: path: ~/.cache/zulu key: jdk-${{ runner.os }}-java-${{ env.java_version }} + - name: Set up JDK uses: actions/setup-java@v3 with: @@ -30,9 +31,9 @@ jobs: uses: actions/cache@v3 with: path: $HOME/Android/Sdk - key: android-sdk-${{ runner.os }}-${{ hashFiles('**/gradle-wrapper.properties') }} + key: android-sdk-${{ runner.os }}-sdk-${{ hashFiles('**/gradle-wrapper.properties') }} restore-keys: | - android-sdk-${{ runner.os }}- + android-sdk-${{ runner.os }}-sdk- - name: Install Android SDK run: | From 3aa2f20eef627aabc14bd9644d4db19ded91131b Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 15:58:52 +0300 Subject: [PATCH 40/95] fix: 1111 --- .gitea/workflows/test.yml | 40 ++++++++++++++++++++++++++++----------- 1 file changed, 29 insertions(+), 11 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 37ceed52..c22a1059 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -18,7 +18,7 @@ jobs: uses: actions/cache@v3 with: path: ~/.cache/zulu - key: jdk-${{ runner.os }}-java-${{ env.java_version }} + key: jdk-${{ runner.os }}-java-${{ env.java_version }} # Ключ для JDK - name: Set up JDK uses: actions/setup-java@v3 @@ -27,25 +27,44 @@ jobs: java-version: ${{ env.java_version }} id: setup-jdk + - name: Cache cmdline-tools + uses: actions/cache@v3 + with: + path: $HOME/Android/Sdk/cmdline-tools + key: android-cmdline-tools-${{ runner.os }}-sdk # Ключ для cmdline-tools + restore-keys: | + android-cmdline-tools-${{ runner.os }}-sdk + - name: Cache Android SDK uses: actions/cache@v3 with: path: $HOME/Android/Sdk - key: android-sdk-${{ runner.os }}-sdk-${{ hashFiles('**/gradle-wrapper.properties') }} + key: android-sdk-${{ runner.os }}-sdk # Ключ для Android SDK restore-keys: | - android-sdk-${{ runner.os }}-sdk- + android-sdk-${{ runner.os }}-sdk + + - name: Cache Flutter SDK + uses: actions/cache@v3 + with: + path: ~/.pub-cache # Путь к кэшу Flutter SDK + key: flutter-${{ runner.os }}-${{ env.flutter_channel }}-${{ env.flutter_version }} + restore-keys: | + flutter-${{ runner.os }}-${{ env.flutter_channel }}- - name: Install Android SDK run: | - apt-get update - apt-get install -y openjdk-11-jdk wget - wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip - unzip commandlinetools.zip - mkdir -p $HOME/Android/Sdk/cmdline-tools/latest - mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ + if [ ! -d "$HOME/Android/Sdk/cmdline-tools/latest" ]; then + apt-get update + apt-get install -y openjdk-11-jdk wget + wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip + unzip commandlinetools.zip + mkdir -p $HOME/Android/Sdk/cmdline-tools/latest + mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ + fi + export ANDROID_SDK_ROOT=$HOME/Android/Sdk export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true + yes | sdkmanager --licenses 2>/dev/null || true - name: Set up Android environment variables run: | @@ -62,7 +81,6 @@ jobs: with: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} - cache: true - name: Fix dir permissions run: | From d49af871205cae5e7437f101c611f573a3999495 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 16:00:29 +0300 Subject: [PATCH 41/95] fix: 2222 --- .gitea/workflows/test.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index c22a1059..ad555613 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -31,17 +31,21 @@ jobs: uses: actions/cache@v3 with: path: $HOME/Android/Sdk/cmdline-tools - key: android-cmdline-tools-${{ runner.os }}-sdk # Ключ для cmdline-tools + key: android-cmdline-tools-${{ runner.os }}-sdk restore-keys: | android-cmdline-tools-${{ runner.os }}-sdk + android-cmdline-tools-${{ runner.os }} + android-cmdline-tools - name: Cache Android SDK uses: actions/cache@v3 with: path: $HOME/Android/Sdk - key: android-sdk-${{ runner.os }}-sdk # Ключ для Android SDK + key: android-sdk-${{ runner.os }}-sdk restore-keys: | android-sdk-${{ runner.os }}-sdk + android-sdk-${{ runner.os }} + android-sdk - name: Cache Flutter SDK uses: actions/cache@v3 @@ -50,6 +54,7 @@ jobs: key: flutter-${{ runner.os }}-${{ env.flutter_channel }}-${{ env.flutter_version }} restore-keys: | flutter-${{ runner.os }}-${{ env.flutter_channel }}- + flutter-${{ runner.os }}- - name: Install Android SDK run: | From 0f47d67922d81cc1f216542b856d2c022fec5385 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 16:10:41 +0300 Subject: [PATCH 42/95] fix: rollback --- .gitea/workflows/test.yml | 57 +++++++-------------------------------- 1 file changed, 10 insertions(+), 47 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index ad555613..59cf2638 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -9,17 +9,11 @@ env: jobs: build: - runs-on: [dev-office] + runs-on: [ dev-office ] steps: - uses: actions/checkout@v3 - - name: Cache JDK - uses: actions/cache@v3 - with: - path: ~/.cache/zulu - key: jdk-${{ runner.os }}-java-${{ env.java_version }} # Ключ для JDK - - name: Set up JDK uses: actions/setup-java@v3 with: @@ -27,49 +21,17 @@ jobs: java-version: ${{ env.java_version }} id: setup-jdk - - name: Cache cmdline-tools - uses: actions/cache@v3 - with: - path: $HOME/Android/Sdk/cmdline-tools - key: android-cmdline-tools-${{ runner.os }}-sdk - restore-keys: | - android-cmdline-tools-${{ runner.os }}-sdk - android-cmdline-tools-${{ runner.os }} - android-cmdline-tools - - - name: Cache Android SDK - uses: actions/cache@v3 - with: - path: $HOME/Android/Sdk - key: android-sdk-${{ runner.os }}-sdk - restore-keys: | - android-sdk-${{ runner.os }}-sdk - android-sdk-${{ runner.os }} - android-sdk - - - name: Cache Flutter SDK - uses: actions/cache@v3 - with: - path: ~/.pub-cache # Путь к кэшу Flutter SDK - key: flutter-${{ runner.os }}-${{ env.flutter_channel }}-${{ env.flutter_version }} - restore-keys: | - flutter-${{ runner.os }}-${{ env.flutter_channel }}- - flutter-${{ runner.os }}- - - name: Install Android SDK run: | - if [ ! -d "$HOME/Android/Sdk/cmdline-tools/latest" ]; then - apt-get update - apt-get install -y openjdk-11-jdk wget - wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip - unzip commandlinetools.zip - mkdir -p $HOME/Android/Sdk/cmdline-tools/latest - mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ - fi - + apt-get update + apt-get install -y openjdk-11-jdk wget + wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip + unzip commandlinetools.zip + mkdir -p $HOME/Android/Sdk/cmdline-tools/latest + mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ export ANDROID_SDK_ROOT=$HOME/Android/Sdk export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true + yes | sdkmanager --licenses 2>/dev/null || true - name: Set up Android environment variables run: | @@ -86,6 +48,7 @@ jobs: with: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} + cache: true - name: Fix dir permissions run: | @@ -119,4 +82,4 @@ jobs: uses: actions/upload-artifact@v3 with: name: ${{ env.APK_NAME }} - path: ${{ env.APK_NAME }} \ No newline at end of file + path: ${{ env.APK_NAME }} From e557f90ba2c0668bcec6a0738436f332d9e6981c Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 13:27:28 +0000 Subject: [PATCH 43/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 59cf2638..1aea8d07 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -12,14 +12,12 @@ jobs: runs-on: [ dev-office ] steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - - name: Set up JDK - uses: actions/setup-java@v3 + - uses: actions/setup-java@v4 with: distribution: "zulu" java-version: ${{ env.java_version }} - id: setup-jdk - name: Install Android SDK run: | @@ -79,7 +77,7 @@ jobs: echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV - name: Upload APK artifact - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: ${{ env.APK_NAME }} path: ${{ env.APK_NAME }} From 7cec613f3aa6299ff87036592624523a6e0405bf Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 13:40:25 +0000 Subject: [PATCH 44/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 1aea8d07..7774ef0c 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -20,6 +20,12 @@ jobs: java-version: ${{ env.java_version }} - name: Install Android SDK + - uses: actions/cache@v4 + with: + path: | + /root/Android/Sdk + key: ${{ runner.os }}-sdk- + restore-keys: ${{ runner.os }}-sdk- run: | apt-get update apt-get install -y openjdk-11-jdk wget From 47d10bd912aa05b538d0e2e114edaf697d30d25d Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 13:41:57 +0000 Subject: [PATCH 45/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 7774ef0c..96e656f2 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -12,15 +12,15 @@ jobs: runs-on: [ dev-office ] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v3 - - uses: actions/setup-java@v4 + - uses: actions/setup-java@v3 with: distribution: "zulu" java-version: ${{ env.java_version }} - name: Install Android SDK - - uses: actions/cache@v4 + - uses: actions/cache@v3 with: path: | /root/Android/Sdk From addb4fb25d323ca158e511e80559aae7c13642af Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 13:43:52 +0000 Subject: [PATCH 46/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 96e656f2..5a784a09 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -20,8 +20,20 @@ jobs: java-version: ${{ env.java_version }} - name: Install Android SDK + run: | + apt-get update + apt-get install -y openjdk-11-jdk wget + wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip + unzip commandlinetools.zip + mkdir -p $HOME/Android/Sdk/cmdline-tools/latest + mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ + export ANDROID_SDK_ROOT=$HOME/Android/Sdk + export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin + yes | sdkmanager --licenses 2>/dev/null || true + + - name: Cache Android SDK - uses: actions/cache@v3 - with: + with: path: | /root/Android/Sdk key: ${{ runner.os }}-sdk- From a43db5844b321db1814d7399c2e38748124bb0b0 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 13:44:01 +0000 Subject: [PATCH 47/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 5a784a09..e3f55574 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -37,17 +37,7 @@ jobs: path: | /root/Android/Sdk key: ${{ runner.os }}-sdk- - restore-keys: ${{ runner.os }}-sdk- - run: | - apt-get update - apt-get install -y openjdk-11-jdk wget - wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip - unzip commandlinetools.zip - mkdir -p $HOME/Android/Sdk/cmdline-tools/latest - mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ - export ANDROID_SDK_ROOT=$HOME/Android/Sdk - export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true + restore-keys: ${{ runner.os }}-sdk- - name: Set up Android environment variables run: | From 4420b1dee4ce0e3f992c5ec262d21c90428f990a Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 16:45:58 +0300 Subject: [PATCH 48/95] fix: cache sdk --- .gitea/workflows/build.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index e8e16098..047ab43a 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -32,6 +32,12 @@ jobs: export ANDROID_SDK_ROOT=$HOME/Android/Sdk export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin sdkmanager "platform-tools" "platforms;android-30" "build-tools;30.0.3" + - uses: actions/cache@v3 + with: + path: | + /root/Android/Sdk + key: ${{ runner.os }}-sdk- + restore-keys: ${{ runner.os }}-sdk- - name: Set up Android environment variables run: | From 98e4b799b90a7f9d26f3bcde7110f80226ef21d4 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 16:47:48 +0300 Subject: [PATCH 49/95] fix: cache jdk --- .gitea/workflows/build.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 047ab43a..4e781f3f 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -19,7 +19,6 @@ jobs: with: distribution: 'zulu' java-version: ${{ env.java_version }} - cache: 'gradle' - name: Install Android SDK run: | From ec72d762810811393916f1c5cf5025c1649fc533 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 13:48:29 +0000 Subject: [PATCH 50/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 63 +++++++++++++++++++++------------------ 1 file changed, 34 insertions(+), 29 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index e3f55574..4e781f3f 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -1,22 +1,23 @@ -name: Eatvio App Android Test +name: Android Release -on: [ pull_request ] +on: [ push, pull_request ] env: - flutter_version: "3.24.5" - java_version: "21.x" + flutter_version: "3.22.0" + java_version: "12.x" flutter_channel: "stable" jobs: build: - runs-on: [ dev-office ] + runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - - uses: actions/setup-java@v3 + - name: Set up JDK + uses: actions/setup-java@v3 with: - distribution: "zulu" + distribution: 'zulu' java-version: ${{ env.java_version }} - name: Install Android SDK @@ -29,25 +30,24 @@ jobs: mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ export ANDROID_SDK_ROOT=$HOME/Android/Sdk export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true - - - name: Cache Android SDK + sdkmanager "platform-tools" "platforms;android-30" "build-tools;30.0.3" - uses: actions/cache@v3 with: path: | /root/Android/Sdk key: ${{ runner.os }}-sdk- - restore-keys: ${{ runner.os }}-sdk- + restore-keys: ${{ runner.os }}-sdk- - name: Set up Android environment variables run: | echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV - echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV + echo "PATH=$PATH:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV + echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV - - name: Install jq - run: | - apt-get install -y jq + - uses: actions/cache@v2 + with: + path: ${{ runner.tool_cache }}/flutter + key: flutter-${{ env.flutter_version }}-${{ env.flutter_channel }} - id: flutter-action uses: actions/flutter-action@v2 @@ -56,11 +56,21 @@ jobs: flutter-version: ${{ env.flutter_version }} cache: true - - name: Fix dir permissions + - name: show cache keys + run: | + echo CACHE-PATH=${{ steps.flutter-action.outputs.CACHE-PATH }} + echo CACHE-KEY=${{ steps.flutter-action.outputs.CACHE-KEY }} + echo CHANNEL=${{ steps.flutter-action.outputs.CHANNEL }} + echo VERSION=${{ steps.flutter-action.outputs.VERSION }} + echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} + echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} + echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} + shell: bash + + - name: fix dir permissions run: | git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} - flutter config --android-sdk="$ANDROID_HOME" - flutter doctor -v + flutter --version - name: Get dependencies run: flutter pub get @@ -68,13 +78,15 @@ jobs: - name: Native Analyze run: flutter analyze + - name: Run Code Metrics + run: flutter pub run dart_code_metrics:metrics lib --disable-sunset-warning --fatal-warnings --fatal-performance + - name: Test run: | - flutter test + flutter test - name: Build apk - run: | - flutter build apk + run: flutter build apk - name: Rename and move apk run: | @@ -82,10 +94,3 @@ jobs: APK_NAME="eatvio_app_${TIMESTAMP}.apk" mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME echo "APK build finished $APK_NAME" - echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV - - - name: Upload APK artifact - uses: actions/upload-artifact@v4 - with: - name: ${{ env.APK_NAME }} - path: ${{ env.APK_NAME }} From f0f3f732f5541d0b5d8b299f63246c1c3c215856 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 16:49:57 +0300 Subject: [PATCH 51/95] fix: cache --- .gitea/workflows/build.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 4e781f3f..532317ec 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -44,7 +44,7 @@ jobs: echo "PATH=$PATH:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV - - uses: actions/cache@v2 + - uses: actions/cache@v3 with: path: ${{ runner.tool_cache }}/flutter key: flutter-${{ env.flutter_version }}-${{ env.flutter_channel }} @@ -54,7 +54,6 @@ jobs: with: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} - cache: true - name: show cache keys run: | From efcb2ce2eee6b0e9982424568121e7c94b5a3537 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 16:51:16 +0300 Subject: [PATCH 52/95] fix: cache 1 --- .gitea/workflows/build.yml | 64 ++++++++++++++++---------------------- 1 file changed, 27 insertions(+), 37 deletions(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 532317ec..a6d70a2a 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -1,15 +1,15 @@ -name: Android Release +name: Eatvio App Android Test -on: [ push, pull_request ] +on: [ pull_request ] env: - flutter_version: "3.22.0" - java_version: "12.x" + flutter_version: "3.24.5" + java_version: "21.x" flutter_channel: "stable" jobs: build: - runs-on: ubuntu-latest + runs-on: [ dev-office ] steps: - uses: actions/checkout@v3 @@ -17,8 +17,9 @@ jobs: - name: Set up JDK uses: actions/setup-java@v3 with: - distribution: 'zulu' + distribution: "zulu" java-version: ${{ env.java_version }} + id: setup-jdk - name: Install Android SDK run: | @@ -30,46 +31,30 @@ jobs: mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ export ANDROID_SDK_ROOT=$HOME/Android/Sdk export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - sdkmanager "platform-tools" "platforms;android-30" "build-tools;30.0.3" - - uses: actions/cache@v3 - with: - path: | - /root/Android/Sdk - key: ${{ runner.os }}-sdk- - restore-keys: ${{ runner.os }}-sdk- + yes | sdkmanager --licenses 2>/dev/null || true - name: Set up Android environment variables run: | echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV - echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV + echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV + echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV - - uses: actions/cache@v3 - with: - path: ${{ runner.tool_cache }}/flutter - key: flutter-${{ env.flutter_version }}-${{ env.flutter_channel }} + - name: Install jq + run: | + apt-get install -y jq - id: flutter-action uses: actions/flutter-action@v2 with: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} + cache: true - - name: show cache keys - run: | - echo CACHE-PATH=${{ steps.flutter-action.outputs.CACHE-PATH }} - echo CACHE-KEY=${{ steps.flutter-action.outputs.CACHE-KEY }} - echo CHANNEL=${{ steps.flutter-action.outputs.CHANNEL }} - echo VERSION=${{ steps.flutter-action.outputs.VERSION }} - echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} - echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} - echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} - shell: bash - - - name: fix dir permissions + - name: Fix dir permissions run: | git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} - flutter --version + flutter config --android-sdk="$ANDROID_HOME" + flutter doctor -v - name: Get dependencies run: flutter pub get @@ -77,15 +62,13 @@ jobs: - name: Native Analyze run: flutter analyze - - name: Run Code Metrics - run: flutter pub run dart_code_metrics:metrics lib --disable-sunset-warning --fatal-warnings --fatal-performance - - name: Test run: | - flutter test + flutter test - name: Build apk - run: flutter build apk + run: | + flutter build apk - name: Rename and move apk run: | @@ -93,3 +76,10 @@ jobs: APK_NAME="eatvio_app_${TIMESTAMP}.apk" mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME echo "APK build finished $APK_NAME" + echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV + + - name: Upload APK artifact + uses: actions/upload-artifact@v3 + with: + name: ${{ env.APK_NAME }} + path: ${{ env.APK_NAME }} From 3f4077a3387b34e7a008a81f9ab661a1b0bcd1c6 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 13:52:38 +0000 Subject: [PATCH 53/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 63 ++++++++++++++++----------------------- 1 file changed, 26 insertions(+), 37 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 4e781f3f..a6d70a2a 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -1,15 +1,15 @@ -name: Android Release +name: Eatvio App Android Test -on: [ push, pull_request ] +on: [ pull_request ] env: - flutter_version: "3.22.0" - java_version: "12.x" + flutter_version: "3.24.5" + java_version: "21.x" flutter_channel: "stable" jobs: build: - runs-on: ubuntu-latest + runs-on: [ dev-office ] steps: - uses: actions/checkout@v3 @@ -17,8 +17,9 @@ jobs: - name: Set up JDK uses: actions/setup-java@v3 with: - distribution: 'zulu' + distribution: "zulu" java-version: ${{ env.java_version }} + id: setup-jdk - name: Install Android SDK run: | @@ -30,24 +31,17 @@ jobs: mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ export ANDROID_SDK_ROOT=$HOME/Android/Sdk export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - sdkmanager "platform-tools" "platforms;android-30" "build-tools;30.0.3" - - uses: actions/cache@v3 - with: - path: | - /root/Android/Sdk - key: ${{ runner.os }}-sdk- - restore-keys: ${{ runner.os }}-sdk- + yes | sdkmanager --licenses 2>/dev/null || true - name: Set up Android environment variables run: | echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV - echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV + echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV + echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV - - uses: actions/cache@v2 - with: - path: ${{ runner.tool_cache }}/flutter - key: flutter-${{ env.flutter_version }}-${{ env.flutter_channel }} + - name: Install jq + run: | + apt-get install -y jq - id: flutter-action uses: actions/flutter-action@v2 @@ -56,21 +50,11 @@ jobs: flutter-version: ${{ env.flutter_version }} cache: true - - name: show cache keys - run: | - echo CACHE-PATH=${{ steps.flutter-action.outputs.CACHE-PATH }} - echo CACHE-KEY=${{ steps.flutter-action.outputs.CACHE-KEY }} - echo CHANNEL=${{ steps.flutter-action.outputs.CHANNEL }} - echo VERSION=${{ steps.flutter-action.outputs.VERSION }} - echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} - echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} - echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} - shell: bash - - - name: fix dir permissions + - name: Fix dir permissions run: | git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} - flutter --version + flutter config --android-sdk="$ANDROID_HOME" + flutter doctor -v - name: Get dependencies run: flutter pub get @@ -78,15 +62,13 @@ jobs: - name: Native Analyze run: flutter analyze - - name: Run Code Metrics - run: flutter pub run dart_code_metrics:metrics lib --disable-sunset-warning --fatal-warnings --fatal-performance - - name: Test run: | - flutter test + flutter test - name: Build apk - run: flutter build apk + run: | + flutter build apk - name: Rename and move apk run: | @@ -94,3 +76,10 @@ jobs: APK_NAME="eatvio_app_${TIMESTAMP}.apk" mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME echo "APK build finished $APK_NAME" + echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV + + - name: Upload APK artifact + uses: actions/upload-artifact@v3 + with: + name: ${{ env.APK_NAME }} + path: ${{ env.APK_NAME }} From 7979fe17dab2a522cad37da9e832020aa93fdb58 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 14:24:49 +0000 Subject: [PATCH 54/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index a6d70a2a..6e226eed 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -19,12 +19,11 @@ jobs: with: distribution: "zulu" java-version: ${{ env.java_version }} - id: setup-jdk - name: Install Android SDK run: | apt-get update - apt-get install -y openjdk-11-jdk wget + apt-get install -y openjdk-21-jdk wget wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip unzip commandlinetools.zip mkdir -p $HOME/Android/Sdk/cmdline-tools/latest @@ -48,7 +47,6 @@ jobs: with: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} - cache: true - name: Fix dir permissions run: | From 3f45a50202302a6fc56ebcc6b5c5074fafa9db76 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 14:26:13 +0000 Subject: [PATCH 55/95] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 6e226eed..0c90ced6 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -23,7 +23,7 @@ jobs: - name: Install Android SDK run: | apt-get update - apt-get install -y openjdk-21-jdk wget + apt-get install -y openjdk-11-jdk wget wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip unzip commandlinetools.zip mkdir -p $HOME/Android/Sdk/cmdline-tools/latest @@ -39,8 +39,7 @@ jobs: echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV - name: Install jq - run: | - apt-get install -y jq + run: apt-get install -y jq - id: flutter-action uses: actions/flutter-action@v2 @@ -61,12 +60,10 @@ jobs: run: flutter analyze - name: Test - run: | - flutter test + run: flutter test - name: Build apk - run: | - flutter build apk + run: flutter build apk - name: Rename and move apk run: | From c143dfc56d830ea23828617cfe601c0bd1208cd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 17:01:32 +0000 Subject: [PATCH 56/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 0c90ced6..95667b5b 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -19,6 +19,7 @@ jobs: with: distribution: "zulu" java-version: ${{ env.java_version }} + cache: gradle - name: Install Android SDK run: | @@ -46,6 +47,7 @@ jobs: with: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} + cache: true - name: Fix dir permissions run: | From 80e9001104889c0e1384f839a729b24725070623 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 17:23:15 +0000 Subject: [PATCH 57/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 95667b5b..1d8a1685 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -27,17 +27,17 @@ jobs: apt-get install -y openjdk-11-jdk wget wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip unzip commandlinetools.zip - mkdir -p $HOME/Android/Sdk/cmdline-tools/latest - mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ - export ANDROID_SDK_ROOT=$HOME/Android/Sdk - export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin + mkdir -p /opt/hostedtoolcache/Android/Sdk/cmdline-tools/latest + mv cmdline-tools/* /opt/hostedtoolcache/Android/Sdk/cmdline-tools/latest/ + export ANDROID_SDK_ROOT=/opt/hostedtoolcache/Android/Sdk + export PATH=$PATH:/opt/hostedtoolcache/Android/Sdk/cmdline-tools/latest/bin yes | sdkmanager --licenses 2>/dev/null || true - name: Set up Android environment variables run: | - echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV - echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV + echo "ANDROID_SDK_ROOT=/opt/hostedtoolcache/Android/Sdk" >> $GITHUB_ENV + echo "PATH=$PATH:/opt/hostedtoolcache/Android/Sdk/cmdline-tools/latest/bin:/opt/hostedtoolcache/Android/Sdk/platform-tools:/opt/hostedtoolcache/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV + echo "ANDROID_HOME=/opt/hostedtoolcache/Android/Sdk" >> $GITHUB_ENV - name: Install jq run: apt-get install -y jq From 41f05e0d2683ed11ed641e9071471e50733f5965 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 17:48:12 +0000 Subject: [PATCH 58/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 1d8a1685..b789d12a 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -6,6 +6,7 @@ env: flutter_version: "3.24.5" java_version: "21.x" flutter_channel: "stable" + my_local_cache_dir: "/opt/hostedtoolcache/" jobs: build: @@ -27,17 +28,17 @@ jobs: apt-get install -y openjdk-11-jdk wget wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip unzip commandlinetools.zip - mkdir -p /opt/hostedtoolcache/Android/Sdk/cmdline-tools/latest - mv cmdline-tools/* /opt/hostedtoolcache/Android/Sdk/cmdline-tools/latest/ - export ANDROID_SDK_ROOT=/opt/hostedtoolcache/Android/Sdk - export PATH=$PATH:/opt/hostedtoolcache/Android/Sdk/cmdline-tools/latest/bin + mkdir -p ${{ env.java_version }}Android/Sdk/cmdline-tools/latest + mv cmdline-tools/* ${{ env.java_version }}Android/Sdk/cmdline-tools/latest/ + export ANDROID_SDK_ROOT=${{ env.java_version }}Android/Sdk + export PATH=$PATH:${{ env.java_version }}Android/Sdk/cmdline-tools/latest/bin yes | sdkmanager --licenses 2>/dev/null || true - name: Set up Android environment variables run: | - echo "ANDROID_SDK_ROOT=/opt/hostedtoolcache/Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:/opt/hostedtoolcache/Android/Sdk/cmdline-tools/latest/bin:/opt/hostedtoolcache/Android/Sdk/platform-tools:/opt/hostedtoolcache/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV - echo "ANDROID_HOME=/opt/hostedtoolcache/Android/Sdk" >> $GITHUB_ENV + echo "ANDROID_SDK_ROOT=${{ env.java_version }}Android/Sdk" >> $GITHUB_ENV + echo "PATH=$PATH:${{ env.java_version }}Android/Sdk/cmdline-tools/latest/bin:/opt/hostedtoolcache/Android/Sdk/platform-tools:/opt/hostedtoolcache/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV + echo "ANDROID_HOME=${{ env.java_version }}Android/Sdk" >> $GITHUB_ENV - name: Install jq run: apt-get install -y jq @@ -51,7 +52,7 @@ jobs: - name: Fix dir permissions run: | - git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} + git config --global --add safe.directory ${{ env.java_version }}flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} flutter config --android-sdk="$ANDROID_HOME" flutter doctor -v From f68348a70a9ad621167cc87cb178f1de7ad1df3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 18:00:01 +0000 Subject: [PATCH 59/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index b789d12a..62ff760b 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -28,17 +28,18 @@ jobs: apt-get install -y openjdk-11-jdk wget wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip unzip commandlinetools.zip - mkdir -p ${{ env.java_version }}Android/Sdk/cmdline-tools/latest - mv cmdline-tools/* ${{ env.java_version }}Android/Sdk/cmdline-tools/latest/ - export ANDROID_SDK_ROOT=${{ env.java_version }}Android/Sdk - export PATH=$PATH:${{ env.java_version }}Android/Sdk/cmdline-tools/latest/bin + mkdir -p ${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest + mv cmdline-tools/* ${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/ + export ANDROID_SDK_ROOT=${{ env.my_local_cache_dir }}Android/Sdk + export PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin yes | sdkmanager --licenses 2>/dev/null || true - name: Set up Android environment variables + id: "android-env-setup" run: | - echo "ANDROID_SDK_ROOT=${{ env.java_version }}Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:${{ env.java_version }}Android/Sdk/cmdline-tools/latest/bin:/opt/hostedtoolcache/Android/Sdk/platform-tools:/opt/hostedtoolcache/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV - echo "ANDROID_HOME=${{ env.java_version }}Android/Sdk" >> $GITHUB_ENV + echo "ANDROID_SDK_ROOT=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV + echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin:/opt/hostedtoolcache/Android/Sdk/platform-tools:/opt/hostedtoolcache/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV + echo "ANDROID_HOME=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - name: Install jq run: apt-get install -y jq @@ -52,8 +53,8 @@ jobs: - name: Fix dir permissions run: | - git config --global --add safe.directory ${{ env.java_version }}flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} - flutter config --android-sdk="$ANDROID_HOME" + git config --global --add safe.directory ${{ env.my_local_cache_dir }}flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} + flutter config --android-sdk="${{ steps.android-env-setup.outputs.ANDROID_HOME}}" flutter doctor -v - name: Get dependencies From aea3e7a6099a9d1cbee23bad4912996aefc2ca59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 18:09:16 +0000 Subject: [PATCH 60/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 62ff760b..cf59cdc4 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -42,7 +42,7 @@ jobs: echo "ANDROID_HOME=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - name: Install jq - run: apt-get install -y jq + run: apt-get install -y jq clang cmake ninja-build libgtk-3-dev - id: flutter-action uses: actions/flutter-action@v2 @@ -50,6 +50,10 @@ jobs: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} cache: true + cache-key: "flutter-:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache + cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path + pub-cache-key: "flutter-pub:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache of dart pub get dependencies + pub-cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path - name: Fix dir permissions run: | From 3e02b4c4354d40fb701171fc15bdf27be3b8bec6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 18:24:13 +0000 Subject: [PATCH 61/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index cf59cdc4..62544a01 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -55,6 +55,17 @@ jobs: pub-cache-key: "flutter-pub:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache of dart pub get dependencies pub-cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path + - name: Print flutter-action outputs + shell: bash + run: | + echo CACHE-PATH=${{ steps.flutter-action.outputs.CACHE-PATH }} + echo CACHE-KEY=${{ steps.flutter-action.outputs.CACHE-KEY }} + echo CHANNEL=${{ steps.flutter-action.outputs.CHANNEL }} + echo VERSION=${{ steps.flutter-action.outputs.VERSION }} + echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} + echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} + echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} + - name: Fix dir permissions run: | git config --global --add safe.directory ${{ env.my_local_cache_dir }}flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} From 7d26da85b1cbdda841a9193f171c436a1687e5d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 18:40:32 +0000 Subject: [PATCH 62/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 62544a01..706e616d 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -38,7 +38,9 @@ jobs: id: "android-env-setup" run: | echo "ANDROID_SDK_ROOT=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin:/opt/hostedtoolcache/Android/Sdk/platform-tools:/opt/hostedtoolcache/Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV + echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin" >> $GITHUB_ENV + echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/platform-tools" >> $GITHUB_ENV + echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV echo "ANDROID_HOME=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - name: Install jq @@ -65,6 +67,9 @@ jobs: echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} + echo "PATH is $PATH" + echo "ANDROID_SDK_ROOT is $ANDROID_SDK_ROOT" + echo "ANDROID_HOME is $ANDROID_HOME" - name: Fix dir permissions run: | From 56e12690ff6df26dcd545b9ce5f5320c2d246a20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 18:56:37 +0000 Subject: [PATCH 63/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 706e616d..a5bcaa64 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -38,9 +38,7 @@ jobs: id: "android-env-setup" run: | echo "ANDROID_SDK_ROOT=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin" >> $GITHUB_ENV - echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/platform-tools" >> $GITHUB_ENV - echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV + echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin:${{ env.my_local_cache_dir }}Android/Sdk/platform-tools:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/35.0.0" >> $GITHUB_ENV echo "ANDROID_HOME=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - name: Install jq @@ -74,7 +72,8 @@ jobs: - name: Fix dir permissions run: | git config --global --add safe.directory ${{ env.my_local_cache_dir }}flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} - flutter config --android-sdk="${{ steps.android-env-setup.outputs.ANDROID_HOME}}" + PATH=${{ steps.android-env-setup.outputs.PATH }} + flutter config --android-sdk="${{ steps.android-env-setup.outputs.ANDROID_SDK_ROOT}}" flutter doctor -v - name: Get dependencies From f22879c09cfab324e0125299eaaa7c4b3211a132 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 19:03:52 +0000 Subject: [PATCH 64/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index a5bcaa64..db6e73d9 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -38,7 +38,7 @@ jobs: id: "android-env-setup" run: | echo "ANDROID_SDK_ROOT=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin:${{ env.my_local_cache_dir }}Android/Sdk/platform-tools:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/35.0.0" >> $GITHUB_ENV + echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin:${{ env.my_local_cache_dir }}Android/Sdk/platform-tools:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV echo "ANDROID_HOME=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - name: Install jq From 58839e218ab466bcaebcd3900f66448a7efed0a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 19:18:51 +0000 Subject: [PATCH 65/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index db6e73d9..978c6a80 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -72,7 +72,8 @@ jobs: - name: Fix dir permissions run: | git config --global --add safe.directory ${{ env.my_local_cache_dir }}flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} - PATH=${{ steps.android-env-setup.outputs.PATH }} + export PATH=${{ steps.android-env-setup.outputs.PATH }} + echo $PATH flutter config --android-sdk="${{ steps.android-env-setup.outputs.ANDROID_SDK_ROOT}}" flutter doctor -v From 833e1a6d09d2c66b42410eed167aa8f1d3496c0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 19:46:30 +0000 Subject: [PATCH 66/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 978c6a80..d52152ca 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -50,7 +50,7 @@ jobs: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} cache: true - cache-key: "flutter-:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache + cache-key: "flutter-:os:-:channel:-:version:-:arch:-:hash:2" # optional, change this to force refresh cache cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path pub-cache-key: "flutter-pub:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache of dart pub get dependencies pub-cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path From 551a272f649f2eed9de64864605c23c795732b6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 19:57:11 +0000 Subject: [PATCH 67/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index d52152ca..cb19151e 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -71,10 +71,8 @@ jobs: - name: Fix dir permissions run: | - git config --global --add safe.directory ${{ env.my_local_cache_dir }}flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} - export PATH=${{ steps.android-env-setup.outputs.PATH }} - echo $PATH - flutter config --android-sdk="${{ steps.android-env-setup.outputs.ANDROID_SDK_ROOT}}" + git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} + flutter config --android-sdk="$ANDROID_HOME" flutter doctor -v - name: Get dependencies From f12a3a0a254588a557d9d539db9d4c4c33cc729c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 20:23:42 +0000 Subject: [PATCH 68/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index cb19151e..f9932fee 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -68,6 +68,8 @@ jobs: echo "PATH is $PATH" echo "ANDROID_SDK_ROOT is $ANDROID_SDK_ROOT" echo "ANDROID_HOME is $ANDROID_HOME" + ls -la /opt/hostedtoolcache + ls -la /opt/hostedtoolcache/Android/Sdk - name: Fix dir permissions run: | From 7167af7ec6199167479777e17730a6d41791d17f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 21:01:29 +0000 Subject: [PATCH 69/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index f9932fee..ad4ed600 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -7,6 +7,7 @@ env: java_version: "21.x" flutter_channel: "stable" my_local_cache_dir: "/opt/hostedtoolcache/" + ANDROID_SDK_ROOT: "/opt/hostedtoolcache/Android/Sdk" jobs: build: @@ -70,6 +71,7 @@ jobs: echo "ANDROID_HOME is $ANDROID_HOME" ls -la /opt/hostedtoolcache ls -la /opt/hostedtoolcache/Android/Sdk + ls -la /opt/hostedtoolcache/Android/Sdk/cmdline-tools/latest/bin - name: Fix dir permissions run: | From 32e39da675eee6ad1e5c6dbb99a5126b61d34866 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 21:13:10 +0000 Subject: [PATCH 70/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index ad4ed600..2f49d9d1 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -33,7 +33,12 @@ jobs: mv cmdline-tools/* ${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/ export ANDROID_SDK_ROOT=${{ env.my_local_cache_dir }}Android/Sdk export PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true + yes | sdkmanager --licenses 2>/dev/null || true + + - name: Accept licenses and install SDK packages + run: | + sdkmanager --sdk_root=$ANDROID_SDK_ROOT --licenses + sdkmanager --sdk_root=$ANDROID_SDK_ROOT "platforvm-tools" "platforms;android-33" - name: Set up Android environment variables id: "android-env-setup" From 67bc16cfffcc9b413cf98d5640a353cca49476b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 21:16:39 +0000 Subject: [PATCH 71/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 2f49d9d1..4bdbc62c 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -38,7 +38,9 @@ jobs: - name: Accept licenses and install SDK packages run: | sdkmanager --sdk_root=$ANDROID_SDK_ROOT --licenses - sdkmanager --sdk_root=$ANDROID_SDK_ROOT "platforvm-tools" "platforms;android-33" + sdkmanager --sdk_root=$ANDROID_SDK_ROOT "platforvm-tools" + sdkmanager --sdk_root=$ANDROID_SDK_ROOT "build-tools" + sdkmanager --sdk_root=$ANDROID_SDK_ROOT "ndk" - name: Set up Android environment variables id: "android-env-setup" From 9fd96db7460ef94b9cc643b560e21e5cedfbc5d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 21:18:35 +0000 Subject: [PATCH 72/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 4bdbc62c..24a47d1e 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -33,11 +33,7 @@ jobs: mv cmdline-tools/* ${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/ export ANDROID_SDK_ROOT=${{ env.my_local_cache_dir }}Android/Sdk export PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true - - - name: Accept licenses and install SDK packages - run: | - sdkmanager --sdk_root=$ANDROID_SDK_ROOT --licenses + yes | sdkmanager --licenses 2>/dev/null || true sdkmanager --sdk_root=$ANDROID_SDK_ROOT "platforvm-tools" sdkmanager --sdk_root=$ANDROID_SDK_ROOT "build-tools" sdkmanager --sdk_root=$ANDROID_SDK_ROOT "ndk" From 54a8d73534d6b88b0341f94ae471b25d9c69cede Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 21:26:03 +0000 Subject: [PATCH 73/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 24a47d1e..a07a41c8 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -34,9 +34,7 @@ jobs: export ANDROID_SDK_ROOT=${{ env.my_local_cache_dir }}Android/Sdk export PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin yes | sdkmanager --licenses 2>/dev/null || true - sdkmanager --sdk_root=$ANDROID_SDK_ROOT "platforvm-tools" - sdkmanager --sdk_root=$ANDROID_SDK_ROOT "build-tools" - sdkmanager --sdk_root=$ANDROID_SDK_ROOT "ndk" + sdkmanager --list | egrep "platform-tools|build-tools|ndk" - name: Set up Android environment variables id: "android-env-setup" From cc0089cb4679f73667e9a636c6e0c0ebeea3dc92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 21:32:28 +0000 Subject: [PATCH 74/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index a07a41c8..a10f1337 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -35,6 +35,9 @@ jobs: export PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin yes | sdkmanager --licenses 2>/dev/null || true sdkmanager --list | egrep "platform-tools|build-tools|ndk" + sdkmanager "platform-tools" + sdkmanager "build-tools" + sdkmanager "ndk" - name: Set up Android environment variables id: "android-env-setup" From 9cf1ca0d88eaaf663cb796e1497e167197ac6dd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 21:47:31 +0000 Subject: [PATCH 75/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index a10f1337..17bf7d7b 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -36,8 +36,8 @@ jobs: yes | sdkmanager --licenses 2>/dev/null || true sdkmanager --list | egrep "platform-tools|build-tools|ndk" sdkmanager "platform-tools" - sdkmanager "build-tools" - sdkmanager "ndk" + sdkmanager "build-tools;33.0.3" + sdkmanager "ndk;27.2.12479018" - name: Set up Android environment variables id: "android-env-setup" From 00deaa2df3dc387002806e10a51376b6f12ab9a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 22:01:59 +0000 Subject: [PATCH 76/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 17bf7d7b..de4ebd68 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -36,14 +36,15 @@ jobs: yes | sdkmanager --licenses 2>/dev/null || true sdkmanager --list | egrep "platform-tools|build-tools|ndk" sdkmanager "platform-tools" - sdkmanager "build-tools;33.0.3" - sdkmanager "ndk;27.2.12479018" + sdkmanager "platform-tools" "platforms;android-35" "platforms;android-34" "platforms;android-33" "platforms;android-31" + sdkmanager "build-tools;34.0.0" + sdkmanager "ndk;25.1.8937393" - name: Set up Android environment variables id: "android-env-setup" run: | echo "ANDROID_SDK_ROOT=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin:${{ env.my_local_cache_dir }}Android/Sdk/platform-tools:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/30.0.3" >> $GITHUB_ENV + echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin:${{ env.my_local_cache_dir }}Android/Sdk/platform-tools:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/30.0.3:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/34.0.0" >> $GITHUB_ENV echo "ANDROID_HOME=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - name: Install jq From 88a020da8865a92e28da223515e9065440195cb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 22:17:20 +0000 Subject: [PATCH 77/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index de4ebd68..2c0bd387 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -16,6 +16,13 @@ jobs: steps: - uses: actions/checkout@v3 + - name: Cache Primes + id: cache-sdk + uses: actions/cache@v4 + with: + path: ${{ env.my_local_cache_dir }} + key: ${{ runner.os }}-cache-sdk + - name: Set up JDK uses: actions/setup-java@v3 with: @@ -24,6 +31,7 @@ jobs: cache: gradle - name: Install Android SDK + if: steps.cache-sdk.outputs.cache-hit != 'true' run: | apt-get update apt-get install -y openjdk-11-jdk wget @@ -39,6 +47,7 @@ jobs: sdkmanager "platform-tools" "platforms;android-35" "platforms;android-34" "platforms;android-33" "platforms;android-31" sdkmanager "build-tools;34.0.0" sdkmanager "ndk;25.1.8937393" + sdkmanager --install "cmake;3.22.1" - name: Set up Android environment variables id: "android-env-setup" From 2fd7839446bd6627e902fa0e2732950a2e73cf92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 22:18:27 +0000 Subject: [PATCH 78/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 2c0bd387..9943bcd8 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -16,9 +16,9 @@ jobs: steps: - uses: actions/checkout@v3 - - name: Cache Primes + - name: Cache SDK id: cache-sdk - uses: actions/cache@v4 + uses: "https://gitea.com/actions/cache@v4" with: path: ${{ env.my_local_cache_dir }} key: ${{ runner.os }}-cache-sdk From 0c95c20f98cc7ab624049b99e962868bc8111129 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 22:38:04 +0000 Subject: [PATCH 79/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 9943bcd8..5f8519f8 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -30,11 +30,14 @@ jobs: java-version: ${{ env.java_version }} cache: gradle - - name: Install Android SDK - if: steps.cache-sdk.outputs.cache-hit != 'true' + - name: Install utils for Android SDK run: | apt-get update apt-get install -y openjdk-11-jdk wget + + - name: Install Android SDK + if: steps.cache-sdk.outputs.cache-hit != 'true' + run: | wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip unzip commandlinetools.zip mkdir -p ${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest @@ -65,7 +68,7 @@ jobs: channel: ${{ env.flutter_channel }} flutter-version: ${{ env.flutter_version }} cache: true - cache-key: "flutter-:os:-:channel:-:version:-:arch:-:hash:2" # optional, change this to force refresh cache + cache-key: "flutter-:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path pub-cache-key: "flutter-pub:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache of dart pub get dependencies pub-cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path @@ -83,9 +86,6 @@ jobs: echo "PATH is $PATH" echo "ANDROID_SDK_ROOT is $ANDROID_SDK_ROOT" echo "ANDROID_HOME is $ANDROID_HOME" - ls -la /opt/hostedtoolcache - ls -la /opt/hostedtoolcache/Android/Sdk - ls -la /opt/hostedtoolcache/Android/Sdk/cmdline-tools/latest/bin - name: Fix dir permissions run: | @@ -107,6 +107,7 @@ jobs: - name: Rename and move apk run: | + timedatectl set-timezone Europe/Moscow TIMESTAMP=$(date +'%Y-%m-%d-%H-%M') APK_NAME="eatvio_app_${TIMESTAMP}.apk" mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME From f9ba23cede9880e7e792886dbea9722ac7770c7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 22:47:57 +0000 Subject: [PATCH 80/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 5f8519f8..bdcfd44e 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -24,6 +24,7 @@ jobs: key: ${{ runner.os }}-cache-sdk - name: Set up JDK + if: steps.cache-sdk.outputs.cache-hit != 'true' uses: actions/setup-java@v3 with: distribution: "zulu" @@ -107,8 +108,7 @@ jobs: - name: Rename and move apk run: | - timedatectl set-timezone Europe/Moscow - TIMESTAMP=$(date +'%Y-%m-%d-%H-%M') + TIMESTAMP=$(TZ=Europe/Moscow date +'%Y-%m-%d-%H-%M') APK_NAME="eatvio_app_${TIMESTAMP}.apk" mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME echo "APK build finished $APK_NAME" From 20288d41e022cb2d05666957e49655721549018c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 22:54:57 +0000 Subject: [PATCH 81/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index bdcfd44e..76412d23 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -16,6 +16,11 @@ jobs: steps: - uses: actions/checkout@v3 + - uses: "https://github.com/awalsh128/cache-apt-pkgs-action" + with: + packages: openjdk-11-jdk wget jq clang cmake ninja-build libgtk-3-dev + version: 1.0 + - name: Cache SDK id: cache-sdk uses: "https://gitea.com/actions/cache@v4" @@ -24,7 +29,6 @@ jobs: key: ${{ runner.os }}-cache-sdk - name: Set up JDK - if: steps.cache-sdk.outputs.cache-hit != 'true' uses: actions/setup-java@v3 with: distribution: "zulu" From 42595fec0a351b729953a659340062887418c071 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 22:56:38 +0000 Subject: [PATCH 82/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 76412d23..bf91ff71 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -16,7 +16,8 @@ jobs: steps: - uses: actions/checkout@v3 - - uses: "https://github.com/awalsh128/cache-apt-pkgs-action" + - name: apk cache + uses: "https://github.com/awalsh128/cache-apt-pkgs-action@v2" with: packages: openjdk-11-jdk wget jq clang cmake ninja-build libgtk-3-dev version: 1.0 From 9965cc612ab7454f214b5cd7ebe424aa97017df2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 22:57:56 +0000 Subject: [PATCH 83/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index bf91ff71..4140dd79 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v3 - name: apk cache - uses: "https://github.com/awalsh128/cache-apt-pkgs-action@v2" + uses: "https://github.com/awalsh128/cache-apt-pkgs-action@latest" with: packages: openjdk-11-jdk wget jq clang cmake ninja-build libgtk-3-dev version: 1.0 From 67c2b615ca425c47b754b47d22b187cb626f0874 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 22:58:48 +0000 Subject: [PATCH 84/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 4140dd79..b1ed8dc8 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -19,7 +19,7 @@ jobs: - name: apk cache uses: "https://github.com/awalsh128/cache-apt-pkgs-action@latest" with: - packages: openjdk-11-jdk wget jq clang cmake ninja-build libgtk-3-dev + packages: openjdk-11-jdk wget jq clang cmake ninja-build libgtk-3-dev sudo version: 1.0 - name: Cache SDK From 8d3637ddc34042241bee205f95247606d4fee882 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 23:00:50 +0000 Subject: [PATCH 85/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index b1ed8dc8..252567fd 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -21,6 +21,7 @@ jobs: with: packages: openjdk-11-jdk wget jq clang cmake ninja-build libgtk-3-dev sudo version: 1.0 + privileged: true - name: Cache SDK id: cache-sdk From d40283814c94a1937472ae2c8cb93049219712cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 23:05:48 +0000 Subject: [PATCH 86/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 252567fd..47a689f4 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -16,14 +16,7 @@ jobs: steps: - uses: actions/checkout@v3 - - name: apk cache - uses: "https://github.com/awalsh128/cache-apt-pkgs-action@latest" - with: - packages: openjdk-11-jdk wget jq clang cmake ninja-build libgtk-3-dev sudo - version: 1.0 - privileged: true - - - name: Cache SDK + - name: Cache Android SDK id: cache-sdk uses: "https://gitea.com/actions/cache@v4" with: @@ -40,7 +33,7 @@ jobs: - name: Install utils for Android SDK run: | apt-get update - apt-get install -y openjdk-11-jdk wget + apt-get install -y openjdk-11-jdk wget jq clang cmake ninja-build libgtk-3-dev - name: Install Android SDK if: steps.cache-sdk.outputs.cache-hit != 'true' From e57e6f318788d4c9def7105bec5d51b1438551ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 23:24:10 +0000 Subject: [PATCH 87/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 47a689f4..ba13d314 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -11,7 +11,7 @@ env: jobs: build: - runs-on: [ dev-office ] + runs-on: [ shalom ] steps: - uses: actions/checkout@v3 From 37b9ee861c036ffb924c9bb7a97b27ded7ade6fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 23:54:26 +0000 Subject: [PATCH 88/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index ba13d314..ad97c24c 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -11,7 +11,7 @@ env: jobs: build: - runs-on: [ shalom ] + runs-on: [ shalom, dev-office ] steps: - uses: actions/checkout@v3 From 248ad0172fdffc4185c7b83ed9a1af965c74d0b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 23:55:49 +0000 Subject: [PATCH 89/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index ad97c24c..e7e1f35d 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -11,7 +11,7 @@ env: jobs: build: - runs-on: [ shalom, dev-office ] + runs-on: [ shalom dev-office ] steps: - uses: actions/checkout@v3 From 06568e871fb4f9e7dfa596608baa43c8f1167147 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Mon, 18 Nov 2024 23:56:58 +0000 Subject: [PATCH 90/95] Update .gitea/workflows/test.yml --- .gitea/workflows/test.yml | 33 +++++++++++++++------------------ 1 file changed, 15 insertions(+), 18 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index e7e1f35d..24078471 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -11,7 +11,7 @@ env: jobs: build: - runs-on: [ shalom dev-office ] + runs-on: [ dev-office ] steps: - uses: actions/checkout@v3 @@ -57,10 +57,7 @@ jobs: run: | echo "ANDROID_SDK_ROOT=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin:${{ env.my_local_cache_dir }}Android/Sdk/platform-tools:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/30.0.3:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/34.0.0" >> $GITHUB_ENV - echo "ANDROID_HOME=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - - - name: Install jq - run: apt-get install -y jq clang cmake ninja-build libgtk-3-dev + echo "ANDROID_HOME=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - id: flutter-action uses: actions/flutter-action@v2 @@ -73,19 +70,19 @@ jobs: pub-cache-key: "flutter-pub:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache of dart pub get dependencies pub-cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path - - name: Print flutter-action outputs - shell: bash - run: | - echo CACHE-PATH=${{ steps.flutter-action.outputs.CACHE-PATH }} - echo CACHE-KEY=${{ steps.flutter-action.outputs.CACHE-KEY }} - echo CHANNEL=${{ steps.flutter-action.outputs.CHANNEL }} - echo VERSION=${{ steps.flutter-action.outputs.VERSION }} - echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} - echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} - echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} - echo "PATH is $PATH" - echo "ANDROID_SDK_ROOT is $ANDROID_SDK_ROOT" - echo "ANDROID_HOME is $ANDROID_HOME" + # - name: Print flutter-action outputs + # shell: bash + # run: | + # echo CACHE-PATH=${{ steps.flutter-action.outputs.CACHE-PATH }} + # echo CACHE-KEY=${{ steps.flutter-action.outputs.CACHE-KEY }} + # echo CHANNEL=${{ steps.flutter-action.outputs.CHANNEL }} + # echo VERSION=${{ steps.flutter-action.outputs.VERSION }} + # echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} + # echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} + # echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} + # echo "PATH is $PATH" + # echo "ANDROID_SDK_ROOT is $ANDROID_SDK_ROOT" + # echo "ANDROID_HOME is $ANDROID_HOME" - name: Fix dir permissions run: | From 06f2228c4d9bd4e3cb86b751f243af2e59fcc430 Mon Sep 17 00:00:00 2001 From: Anatoliy Date: Tue, 19 Nov 2024 11:44:53 +0300 Subject: [PATCH 91/95] ci(action) --- .gitea/workflows/apoloz-docker-build.yml | 67 ++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 .gitea/workflows/apoloz-docker-build.yml diff --git a/.gitea/workflows/apoloz-docker-build.yml b/.gitea/workflows/apoloz-docker-build.yml new file mode 100644 index 00000000..13b45ad0 --- /dev/null +++ b/.gitea/workflows/apoloz-docker-build.yml @@ -0,0 +1,67 @@ +name: Eatvio App Android Test on custom docker + +on: [ pull_request ] + +env: + flutter_version: "3.24.5" + java_version: "21.x" + flutter_channel: "stable" + my_local_cache_dir: "/opt/hostedtoolcache/" + ANDROID_SDK_ROOT: "/opt/hostedtoolcache/Android/Sdk" + +jobs: + build: + runs-on: [ dev-office-flutter ] + + steps: + - uses: actions/checkout@v3 + + - name: Set up Android environment variables + id: "android-env-setup" + run: | + echo "ANDROID_SDK_ROOT=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV + echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin:${{ env.my_local_cache_dir }}Android/Sdk/platform-tools:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/30.0.3:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/34.0.0" >> $GITHUB_ENV + echo "ANDROID_HOME=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV + + - id: flutter-action + uses: actions/flutter-action@v2 + with: + channel: ${{ env.flutter_channel }} + flutter-version: ${{ env.flutter_version }} + cache: true + cache-key: "flutter-:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache + cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path + pub-cache-key: "flutter-pub:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache of dart pub get dependencies + pub-cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path + + - name: Fix dir permissions + run: | + git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} + flutter config --android-sdk="$ANDROID_HOME" + flutter doctor -v + + - name: Get dependencies + run: flutter pub get + + - name: Native Analyze + run: flutter analyze + + - name: Test + run: flutter test + + - name: Build apk + run: flutter build apk + + - name: Rename and move apk + run: | + TIMESTAMP=$(TZ=Europe/Moscow date +'%Y-%m-%d-%H-%M') + APK_NAME="eatvio_app_${TIMESTAMP}.apk" + mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME + echo "APK build finished $APK_NAME" + echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV + + - name: Upload APK artifact + uses: actions/upload-artifact@v3 + with: + name: ${{ env.APK_NAME }} + path: ${{ env.APK_NAME }} From 4907a3cee1c1e7ef839c88bbe5cedeb82c81320d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Tue, 19 Nov 2024 10:45:46 +0000 Subject: [PATCH 92/95] Update .gitea/workflows/apoloz-docker-build.yml --- .gitea/workflows/apoloz-docker-build.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.gitea/workflows/apoloz-docker-build.yml b/.gitea/workflows/apoloz-docker-build.yml index 13b45ad0..ff6e668b 100644 --- a/.gitea/workflows/apoloz-docker-build.yml +++ b/.gitea/workflows/apoloz-docker-build.yml @@ -23,16 +23,16 @@ jobs: echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin:${{ env.my_local_cache_dir }}Android/Sdk/platform-tools:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/30.0.3:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/34.0.0" >> $GITHUB_ENV echo "ANDROID_HOME=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - - id: flutter-action - uses: actions/flutter-action@v2 - with: - channel: ${{ env.flutter_channel }} - flutter-version: ${{ env.flutter_version }} - cache: true - cache-key: "flutter-:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache - cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path - pub-cache-key: "flutter-pub:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache of dart pub get dependencies - pub-cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path + # - id: flutter-action + # uses: actions/flutter-action@v2 + # with: + # channel: ${{ env.flutter_channel }} + # flutter-version: ${{ env.flutter_version }} + # cache: true + # cache-key: "flutter-:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache + # cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path + # pub-cache-key: "flutter-pub:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache of dart pub get dependencies + # pub-cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path - name: Fix dir permissions run: | From 02b43fa17193e73074d7b19070a25eb8649a472b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Tue, 19 Nov 2024 13:11:24 +0000 Subject: [PATCH 93/95] Update .gitea/workflows/apoloz-docker-build.yml --- .gitea/workflows/apoloz-docker-build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitea/workflows/apoloz-docker-build.yml b/.gitea/workflows/apoloz-docker-build.yml index ff6e668b..e10211fc 100644 --- a/.gitea/workflows/apoloz-docker-build.yml +++ b/.gitea/workflows/apoloz-docker-build.yml @@ -8,6 +8,7 @@ env: flutter_channel: "stable" my_local_cache_dir: "/opt/hostedtoolcache/" ANDROID_SDK_ROOT: "/opt/hostedtoolcache/Android/Sdk" + PUB_CACHE: "/opt/hostedtoolcache/.pub-cache" jobs: build: From cf35558d85f74177663eb436614520f2a9f2ba0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=82=D0=BE=D0=BB=D0=B8=D0=B9=20=D0=9F?= =?UTF-8?q?=D0=BE=D0=BB=D0=BE=D0=B7?= Date: Tue, 19 Nov 2024 13:41:20 +0000 Subject: [PATCH 94/95] Update .gitea/workflows/docker-run-tests.yml --- ...-docker-build.yml => docker-run-tests.yml} | 39 +++++++------------ 1 file changed, 14 insertions(+), 25 deletions(-) rename .gitea/workflows/{apoloz-docker-build.yml => docker-run-tests.yml} (53%) diff --git a/.gitea/workflows/apoloz-docker-build.yml b/.gitea/workflows/docker-run-tests.yml similarity index 53% rename from .gitea/workflows/apoloz-docker-build.yml rename to .gitea/workflows/docker-run-tests.yml index e10211fc..99cc866e 100644 --- a/.gitea/workflows/apoloz-docker-build.yml +++ b/.gitea/workflows/docker-run-tests.yml @@ -24,17 +24,6 @@ jobs: echo "PATH=$PATH:${{ env.my_local_cache_dir }}Android/Sdk/cmdline-tools/latest/bin:${{ env.my_local_cache_dir }}Android/Sdk/platform-tools:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/30.0.3:${{ env.my_local_cache_dir }}Android/Sdk/build-tools/34.0.0" >> $GITHUB_ENV echo "ANDROID_HOME=${{ env.my_local_cache_dir }}Android/Sdk" >> $GITHUB_ENV - # - id: flutter-action - # uses: actions/flutter-action@v2 - # with: - # channel: ${{ env.flutter_channel }} - # flutter-version: ${{ env.flutter_version }} - # cache: true - # cache-key: "flutter-:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache - # cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path - # pub-cache-key: "flutter-pub:os:-:channel:-:version:-:arch:-:hash:" # optional, change this to force refresh cache of dart pub get dependencies - # pub-cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" # optional, change this to specify the cache path - - name: Fix dir permissions run: | git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ env.flutter_channel }}-${{ env.flutter_version }}-${{ steps.flutter-action.outputs.ARCHITECTURE }} @@ -50,19 +39,19 @@ jobs: - name: Test run: flutter test - - name: Build apk - run: flutter build apk + # - name: Build apk + # run: flutter build apk - - name: Rename and move apk - run: | - TIMESTAMP=$(TZ=Europe/Moscow date +'%Y-%m-%d-%H-%M') - APK_NAME="eatvio_app_${TIMESTAMP}.apk" - mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME - echo "APK build finished $APK_NAME" - echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV + # - name: Rename and move apk + # run: | + # TIMESTAMP=$(TZ=Europe/Moscow date +'%Y-%m-%d-%H-%M') + # APK_NAME="eatvio_app_${TIMESTAMP}.apk" + # mv build/app/outputs/flutter-apk/app-release.apk $APK_NAME + # echo "APK build finished $APK_NAME" + # echo "APK_NAME=$APK_NAME" >> $GITHUB_ENV - - name: Upload APK artifact - uses: actions/upload-artifact@v3 - with: - name: ${{ env.APK_NAME }} - path: ${{ env.APK_NAME }} + # - name: Upload APK artifact + # uses: actions/upload-artifact@v3 + # with: + # name: ${{ env.APK_NAME }} + # path: ${{ env.APK_NAME }} From 1ac956b4481ed3bb84526e0c9f5264dbc4e7e3e0 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Wed, 20 Nov 2024 11:15:20 +0300 Subject: [PATCH 95/95] fix: fix analyzer --- .../gradle/wrapper/gradle-wrapper.properties | 1 - .../models/product_moderation_model.dart | 21 ++ .../product_moderation_model.freezed.dart | 270 ++++++++++++++++++ .../models/product_moderation_model.g.dart | 27 ++ .../diary/presentation/bloc/diary_cubit.dart | 16 ++ .../presentation/pages/diary_screen.dart | 5 +- ...ssary_moderation_request_modal_widget.dart | 86 +++++- .../diary/repositories/diary_repository.dart | 19 ++ .../diary/services/diary_service.dart | 5 + .../diary/services/diary_service.g.dart | 27 ++ 10 files changed, 472 insertions(+), 5 deletions(-) create mode 100644 lib/features/diary/models/product_moderation_model.dart create mode 100644 lib/features/diary/models/product_moderation_model.freezed.dart create mode 100644 lib/features/diary/models/product_moderation_model.g.dart diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties index 5841cc1f..2496707b 100644 --- a/android/gradle/wrapper/gradle-wrapper.properties +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -1,4 +1,3 @@ -#Fri Jun 23 08:50:38 CEST 2017 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME diff --git a/lib/features/diary/models/product_moderation_model.dart b/lib/features/diary/models/product_moderation_model.dart new file mode 100644 index 00000000..c28ffe64 --- /dev/null +++ b/lib/features/diary/models/product_moderation_model.dart @@ -0,0 +1,21 @@ +import 'package:freezed_annotation/freezed_annotation.dart'; + +part 'product_moderation_model.freezed.dart'; +part 'product_moderation_model.g.dart'; + +@freezed +class ProductModerationModel with _$ProductModerationModel { + const factory ProductModerationModel({ + required String name, + @JsonKey(name: 'energy_on_100gr') + required int energy, + @JsonKey(name: 'proteins_on_100gr') + required int proteins, + @JsonKey(name: 'fats_on_100gr') + required int fats, + @JsonKey(name: 'carbohydrates_on_100gr') + required int carbohydrates, + }) = _ProductModerationModel; + + factory ProductModerationModel.fromJson(Map json) => _$ProductModerationModelFromJson(json); +} diff --git a/lib/features/diary/models/product_moderation_model.freezed.dart b/lib/features/diary/models/product_moderation_model.freezed.dart new file mode 100644 index 00000000..9566e207 --- /dev/null +++ b/lib/features/diary/models/product_moderation_model.freezed.dart @@ -0,0 +1,270 @@ +// coverage:ignore-file +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark + +part of 'product_moderation_model.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +T _$identity(T value) => value; + +final _privateConstructorUsedError = UnsupportedError( + 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models'); + +ProductModerationModel _$ProductModerationModelFromJson( + Map json) { + return _ProductModerationModel.fromJson(json); +} + +/// @nodoc +mixin _$ProductModerationModel { + String get name => throw _privateConstructorUsedError; + @JsonKey(name: 'energy_on_100gr') + int get energy => throw _privateConstructorUsedError; + @JsonKey(name: 'proteins_on_100gr') + int get proteins => throw _privateConstructorUsedError; + @JsonKey(name: 'fats_on_100gr') + int get fats => throw _privateConstructorUsedError; + @JsonKey(name: 'carbohydrates_on_100gr') + int get carbohydrates => throw _privateConstructorUsedError; + + /// Serializes this ProductModerationModel to a JSON map. + Map toJson() => throw _privateConstructorUsedError; + + /// Create a copy of ProductModerationModel + /// with the given fields replaced by the non-null parameter values. + @JsonKey(includeFromJson: false, includeToJson: false) + $ProductModerationModelCopyWith get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $ProductModerationModelCopyWith<$Res> { + factory $ProductModerationModelCopyWith(ProductModerationModel value, + $Res Function(ProductModerationModel) then) = + _$ProductModerationModelCopyWithImpl<$Res, ProductModerationModel>; + @useResult + $Res call( + {String name, + @JsonKey(name: 'energy_on_100gr') int energy, + @JsonKey(name: 'proteins_on_100gr') int proteins, + @JsonKey(name: 'fats_on_100gr') int fats, + @JsonKey(name: 'carbohydrates_on_100gr') int carbohydrates}); +} + +/// @nodoc +class _$ProductModerationModelCopyWithImpl<$Res, + $Val extends ProductModerationModel> + implements $ProductModerationModelCopyWith<$Res> { + _$ProductModerationModelCopyWithImpl(this._value, this._then); + + // ignore: unused_field + final $Val _value; + // ignore: unused_field + final $Res Function($Val) _then; + + /// Create a copy of ProductModerationModel + /// with the given fields replaced by the non-null parameter values. + @pragma('vm:prefer-inline') + @override + $Res call({ + Object? name = null, + Object? energy = null, + Object? proteins = null, + Object? fats = null, + Object? carbohydrates = null, + }) { + return _then(_value.copyWith( + name: null == name + ? _value.name + : name // ignore: cast_nullable_to_non_nullable + as String, + energy: null == energy + ? _value.energy + : energy // ignore: cast_nullable_to_non_nullable + as int, + proteins: null == proteins + ? _value.proteins + : proteins // ignore: cast_nullable_to_non_nullable + as int, + fats: null == fats + ? _value.fats + : fats // ignore: cast_nullable_to_non_nullable + as int, + carbohydrates: null == carbohydrates + ? _value.carbohydrates + : carbohydrates // ignore: cast_nullable_to_non_nullable + as int, + ) as $Val); + } +} + +/// @nodoc +abstract class _$$ProductModerationModelImplCopyWith<$Res> + implements $ProductModerationModelCopyWith<$Res> { + factory _$$ProductModerationModelImplCopyWith( + _$ProductModerationModelImpl value, + $Res Function(_$ProductModerationModelImpl) then) = + __$$ProductModerationModelImplCopyWithImpl<$Res>; + @override + @useResult + $Res call( + {String name, + @JsonKey(name: 'energy_on_100gr') int energy, + @JsonKey(name: 'proteins_on_100gr') int proteins, + @JsonKey(name: 'fats_on_100gr') int fats, + @JsonKey(name: 'carbohydrates_on_100gr') int carbohydrates}); +} + +/// @nodoc +class __$$ProductModerationModelImplCopyWithImpl<$Res> + extends _$ProductModerationModelCopyWithImpl<$Res, + _$ProductModerationModelImpl> + implements _$$ProductModerationModelImplCopyWith<$Res> { + __$$ProductModerationModelImplCopyWithImpl( + _$ProductModerationModelImpl _value, + $Res Function(_$ProductModerationModelImpl) _then) + : super(_value, _then); + + /// Create a copy of ProductModerationModel + /// with the given fields replaced by the non-null parameter values. + @pragma('vm:prefer-inline') + @override + $Res call({ + Object? name = null, + Object? energy = null, + Object? proteins = null, + Object? fats = null, + Object? carbohydrates = null, + }) { + return _then(_$ProductModerationModelImpl( + name: null == name + ? _value.name + : name // ignore: cast_nullable_to_non_nullable + as String, + energy: null == energy + ? _value.energy + : energy // ignore: cast_nullable_to_non_nullable + as int, + proteins: null == proteins + ? _value.proteins + : proteins // ignore: cast_nullable_to_non_nullable + as int, + fats: null == fats + ? _value.fats + : fats // ignore: cast_nullable_to_non_nullable + as int, + carbohydrates: null == carbohydrates + ? _value.carbohydrates + : carbohydrates // ignore: cast_nullable_to_non_nullable + as int, + )); + } +} + +/// @nodoc +@JsonSerializable() +class _$ProductModerationModelImpl implements _ProductModerationModel { + const _$ProductModerationModelImpl( + {required this.name, + @JsonKey(name: 'energy_on_100gr') required this.energy, + @JsonKey(name: 'proteins_on_100gr') required this.proteins, + @JsonKey(name: 'fats_on_100gr') required this.fats, + @JsonKey(name: 'carbohydrates_on_100gr') required this.carbohydrates}); + + factory _$ProductModerationModelImpl.fromJson(Map json) => + _$$ProductModerationModelImplFromJson(json); + + @override + final String name; + @override + @JsonKey(name: 'energy_on_100gr') + final int energy; + @override + @JsonKey(name: 'proteins_on_100gr') + final int proteins; + @override + @JsonKey(name: 'fats_on_100gr') + final int fats; + @override + @JsonKey(name: 'carbohydrates_on_100gr') + final int carbohydrates; + + @override + String toString() { + return 'ProductModerationModel(name: $name, energy: $energy, proteins: $proteins, fats: $fats, carbohydrates: $carbohydrates)'; + } + + @override + bool operator ==(Object other) { + return identical(this, other) || + (other.runtimeType == runtimeType && + other is _$ProductModerationModelImpl && + (identical(other.name, name) || other.name == name) && + (identical(other.energy, energy) || other.energy == energy) && + (identical(other.proteins, proteins) || + other.proteins == proteins) && + (identical(other.fats, fats) || other.fats == fats) && + (identical(other.carbohydrates, carbohydrates) || + other.carbohydrates == carbohydrates)); + } + + @JsonKey(includeFromJson: false, includeToJson: false) + @override + int get hashCode => + Object.hash(runtimeType, name, energy, proteins, fats, carbohydrates); + + /// Create a copy of ProductModerationModel + /// with the given fields replaced by the non-null parameter values. + @JsonKey(includeFromJson: false, includeToJson: false) + @override + @pragma('vm:prefer-inline') + _$$ProductModerationModelImplCopyWith<_$ProductModerationModelImpl> + get copyWith => __$$ProductModerationModelImplCopyWithImpl< + _$ProductModerationModelImpl>(this, _$identity); + + @override + Map toJson() { + return _$$ProductModerationModelImplToJson( + this, + ); + } +} + +abstract class _ProductModerationModel implements ProductModerationModel { + const factory _ProductModerationModel( + {required final String name, + @JsonKey(name: 'energy_on_100gr') required final int energy, + @JsonKey(name: 'proteins_on_100gr') required final int proteins, + @JsonKey(name: 'fats_on_100gr') required final int fats, + @JsonKey(name: 'carbohydrates_on_100gr') + required final int carbohydrates}) = _$ProductModerationModelImpl; + + factory _ProductModerationModel.fromJson(Map json) = + _$ProductModerationModelImpl.fromJson; + + @override + String get name; + @override + @JsonKey(name: 'energy_on_100gr') + int get energy; + @override + @JsonKey(name: 'proteins_on_100gr') + int get proteins; + @override + @JsonKey(name: 'fats_on_100gr') + int get fats; + @override + @JsonKey(name: 'carbohydrates_on_100gr') + int get carbohydrates; + + /// Create a copy of ProductModerationModel + /// with the given fields replaced by the non-null parameter values. + @override + @JsonKey(includeFromJson: false, includeToJson: false) + _$$ProductModerationModelImplCopyWith<_$ProductModerationModelImpl> + get copyWith => throw _privateConstructorUsedError; +} diff --git a/lib/features/diary/models/product_moderation_model.g.dart b/lib/features/diary/models/product_moderation_model.g.dart new file mode 100644 index 00000000..2199a5f6 --- /dev/null +++ b/lib/features/diary/models/product_moderation_model.g.dart @@ -0,0 +1,27 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'product_moderation_model.dart'; + +// ************************************************************************** +// JsonSerializableGenerator +// ************************************************************************** + +_$ProductModerationModelImpl _$$ProductModerationModelImplFromJson( + Map json) => + _$ProductModerationModelImpl( + name: json['name'] as String, + energy: (json['energy_on_100gr'] as num).toInt(), + proteins: (json['proteins_on_100gr'] as num).toInt(), + fats: (json['fats_on_100gr'] as num).toInt(), + carbohydrates: (json['carbohydrates_on_100gr'] as num).toInt(), + ); + +Map _$$ProductModerationModelImplToJson( + _$ProductModerationModelImpl instance) => + { + 'name': instance.name, + 'energy_on_100gr': instance.energy, + 'proteins_on_100gr': instance.proteins, + 'fats_on_100gr': instance.fats, + 'carbohydrates_on_100gr': instance.carbohydrates, + }; diff --git a/lib/features/diary/presentation/bloc/diary_cubit.dart b/lib/features/diary/presentation/bloc/diary_cubit.dart index 0c243ac4..976d16e6 100644 --- a/lib/features/diary/presentation/bloc/diary_cubit.dart +++ b/lib/features/diary/presentation/bloc/diary_cubit.dart @@ -140,4 +140,20 @@ class DiaryCubit extends Cubit { currentSelectedSatietyRating = value; emit((state as DiaryStateLoaded).copyWith(currentSelectedSatietyRating: currentSelectedSatietyRating)); } + + sendProductToModeration({ + required String name, + required int energy, + required int proteins, + required int fats, + required int carbohydrates, + }) async { + return await diaryRepository.sendProductToModeration( + name: name, + energy: energy, + proteins: proteins, + fats: fats, + carbohydrates: carbohydrates, + ); + } } diff --git a/lib/features/diary/presentation/pages/diary_screen.dart b/lib/features/diary/presentation/pages/diary_screen.dart index 94d1eff5..6c19ceb6 100644 --- a/lib/features/diary/presentation/pages/diary_screen.dart +++ b/lib/features/diary/presentation/pages/diary_screen.dart @@ -1023,7 +1023,10 @@ class _DiaryScreenState extends State { padding: EdgeInsets.only( bottom: MediaQuery.of(context).viewInsets.bottom, ), - child: GlossaryModerationRequestModalWidget(productName: productNameController.text), + child: GlossaryModerationRequestModalWidget( + productName: productNameController.text, + diaryCubit: diaryCubit, + ), ), ); } diff --git a/lib/features/diary/presentation/widgets/glossary_moderation_request_modal_widget.dart b/lib/features/diary/presentation/widgets/glossary_moderation_request_modal_widget.dart index 956a9113..57896321 100644 --- a/lib/features/diary/presentation/widgets/glossary_moderation_request_modal_widget.dart +++ b/lib/features/diary/presentation/widgets/glossary_moderation_request_modal_widget.dart @@ -1,29 +1,38 @@ +import 'package:eatvio_app/features/diary/presentation/bloc/diary_cubit.dart'; import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:lottie/lottie.dart'; class GlossaryModerationRequestModalWidget extends StatefulWidget { + final DiaryCubit diaryCubit; final String productName; const GlossaryModerationRequestModalWidget({ super.key, - required this.productName, + required this.productName, required this.diaryCubit, }); @override State createState() => _GlossaryModerationRequestModalWidgetState(); } -enum GlossaryState { alert, addNewProduct, finish } +enum GlossaryState { alert, addNewProduct, success } class _GlossaryModerationRequestModalWidgetState extends State { GlossaryState glossaryState = GlossaryState.alert; final productNameController = TextEditingController(); + final energyController = TextEditingController(); + final proteinsController = TextEditingController(); + final fatsController = TextEditingController(); + final carbohydratesController = TextEditingController(); @override Widget build(BuildContext context) { if (glossaryState == GlossaryState.alert) { return _alert(); + } else if (glossaryState == GlossaryState.success) { + return _success(); } else { return _addNewGlossaryProduct(); } @@ -126,6 +135,58 @@ class _GlossaryModerationRequestModalWidgetState extends State sendProductToModeration({ + required String name, + required int energy, + required int proteins, + required int fats, + required int carbohydrates, + }) async { + return await diaryService.sendProductToModeration( + data: ProductModerationModel( + name: name, + energy: energy, + proteins: proteins, + fats: fats, + carbohydrates: carbohydrates, + ).toJson(), + ); + } } diff --git a/lib/features/diary/services/diary_service.dart b/lib/features/diary/services/diary_service.dart index d4edd406..4ff8b2e1 100644 --- a/lib/features/diary/services/diary_service.dart +++ b/lib/features/diary/services/diary_service.dart @@ -70,4 +70,9 @@ abstract class DiaryService { @Path('diary_id') required int diaryId, // @Body() required FinishDiaryDayModel finishDiaryDayModel, }); + + @POST('/api/diary/product_nutritional_values/sendToModeration') + Future sendProductToModeration({ + @Body() required Map data, + }); } diff --git a/lib/features/diary/services/diary_service.g.dart b/lib/features/diary/services/diary_service.g.dart index 816c7fb5..b9327c5f 100644 --- a/lib/features/diary/services/diary_service.g.dart +++ b/lib/features/diary/services/diary_service.g.dart @@ -320,6 +320,33 @@ class _DiaryService implements DiaryService { await _dio.fetch(_options); } + @override + Future sendProductToModeration( + {required Map data}) async { + final _extra = {}; + final queryParameters = {}; + final _headers = {}; + final _data = {}; + _data.addAll(data); + final _options = _setStreamType(Options( + method: 'POST', + headers: _headers, + extra: _extra, + ) + .compose( + _dio.options, + '/api/diary/product_nutritional_values/sendToModeration', + queryParameters: queryParameters, + data: _data, + ) + .copyWith( + baseUrl: _combineBaseUrls( + _dio.options.baseUrl, + baseUrl, + ))); + await _dio.fetch(_options); + } + RequestOptions _setStreamType(RequestOptions requestOptions) { if (T != dynamic && !(requestOptions.responseType == ResponseType.bytes ||