[mob][photos] Update version and change log (#981)

## Description

- Updated change log.
- Some final changes.
- Bumped up to `v0.8.66`

### Change Log

#### iOS


https://github.com/ente-io/ente/assets/77285023/10e0d1a3-cdfc-4431-be6c-1eb8718d35db

#### Android


https://github.com/ente-io/ente/assets/77285023/fed1e917-da2e-4001-b167-25fa72a1ff8c



## Tests
- [x] Builds fine on iOS and Android.
This commit is contained in:
Vishnu Mohandas 2024-03-09 19:26:32 +05:30 committed by GitHub
commit 50cb7f7aaf
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
25 changed files with 64 additions and 88 deletions

View file

@ -1,5 +1,31 @@
# CHANGELOG
## v0.8.66
### Added
* #### Home Widget ✨
Introducing our new Android widget! Enjoy your favourite memories directly on your home screen.
* #### Redesigned Discovery Tab
We've given it a fresh new look for improved design and better visual separation between each section.
* #### Location Clustering
Now, see photos automatically organize into clusters around a radius of populated cities.
* #### Ente is now fully Open Source!
We took the final step in our open source journey. Our clients had always been open source. Now, we have released the source code for our servers.
* #### Bug Fixes
Many a bugs were squashed in this release. If you run into any, please write to team@ente.io, or let us know on Discord! 🙏
## v0.8.54
### Added
@ -78,34 +104,3 @@
* **Translations**: Add support for German language
* This release contains massive improvements to how smoothly our gallery
scrolls. More improvements are on the way!
## 0.7.62
### Added
#### Collages ✨
Create collages out of your favorite photos!
Select your photos, and click on "Create collage" to build a single frame that captures your whole memory.
#### Album sort order
You can now choose how photos within your albums are ordered newest or oldest first.
This is useful for albums of trips and events, where you wish to see your stories unfold along their original timelines.
Click on the overflow menu within an album to configure how it's sorted.
#### Shared album improvements
Photos in albums that are shared with you will now be shown in your home gallery. You can hide them by simply archiving the shared album.
### Improvements
We've worked super hard to improve how smoothly our home gallery scrolls. Skimming through your memories should be a lot more enjoyable now.

View file

@ -212,8 +212,6 @@ PODS:
- Flutter
- wakelock_plus (0.0.1):
- Flutter
- workmanager (0.0.1):
- Flutter
DEPENDENCIES:
- background_fetch (from `.symlinks/plugins/background_fetch/ios`)
@ -263,7 +261,6 @@ DEPENDENCIES:
- video_thumbnail (from `.symlinks/plugins/video_thumbnail/ios`)
- volume_controller (from `.symlinks/plugins/volume_controller/ios`)
- wakelock_plus (from `.symlinks/plugins/wakelock_plus/ios`)
- workmanager (from `.symlinks/plugins/workmanager/ios`)
SPEC REPOS:
trunk:
@ -384,8 +381,6 @@ EXTERNAL SOURCES:
:path: ".symlinks/plugins/volume_controller/ios"
wakelock_plus:
:path: ".symlinks/plugins/wakelock_plus/ios"
workmanager:
:path: ".symlinks/plugins/workmanager/ios"
SPEC CHECKSUMS:
background_fetch: 896944864b038d2837fc750d470e9841e1e6a363
@ -456,7 +451,6 @@ SPEC CHECKSUMS:
video_thumbnail: c4e2a3c539e247d4de13cd545344fd2d26ffafd1
volume_controller: 531ddf792994285c9b17f9d8a7e4dcdd29b3eae9
wakelock_plus: 8b09852c8876491e4b6d179e17dfe2a0b5f60d47
workmanager: 0afdcf5628bbde6924c21af7836fed07b42e30e6
PODFILE CHECKSUM: c1a8f198a245ed1f10e40b617efdb129b021b225

View file

@ -16,7 +16,7 @@
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };
DA6BE5E826B3BC8600656280 /* (null) in Resources */ = {isa = PBXBuildFile; };
DA6BE5E826B3BC8600656280 /* BuildFile in Resources */ = {isa = PBXBuildFile; };
/* End PBXBuildFile section */
/* Begin PBXCopyFilesBuildPhase section */
@ -229,7 +229,7 @@
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */,
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */,
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */,
DA6BE5E826B3BC8600656280 /* (null) in Resources */,
DA6BE5E826B3BC8600656280 /* BuildFile in Resources */,
277218A0270F596900FFE3CC /* GoogleService-Info.plist in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
@ -336,7 +336,6 @@
"${BUILT_PRODUCTS_DIR}/video_thumbnail/video_thumbnail.framework",
"${BUILT_PRODUCTS_DIR}/volume_controller/volume_controller.framework",
"${BUILT_PRODUCTS_DIR}/wakelock_plus/wakelock_plus.framework",
"${BUILT_PRODUCTS_DIR}/workmanager/workmanager.framework",
"${PODS_XCFRAMEWORKS_BUILD_DIR}/media_kit_libs_ios_video/Ass.framework/Ass",
"${PODS_XCFRAMEWORKS_BUILD_DIR}/media_kit_libs_ios_video/Avcodec.framework/Avcodec",
"${PODS_XCFRAMEWORKS_BUILD_DIR}/media_kit_libs_ios_video/Avfilter.framework/Avfilter",
@ -419,7 +418,6 @@
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/video_thumbnail.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/volume_controller.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/wakelock_plus.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/workmanager.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Ass.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Avcodec.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Avfilter.framework",

View file

@ -67,7 +67,7 @@ const defaultCityRadius = 10.0;
const galleryGridSpacing = 2.0;
const kSearchSectionLimit = 7;
const kSearchSectionLimit = 9;
const iOSGroupID = "group.io.ente.frame.SlideshowWidget";

View file

@ -1199,8 +1199,6 @@ class MessageLookup extends MessageLookupByLibrary {
"searchHint4": MessageLookupByLibrary.simpleMessage("Ort"),
"searchHint5": MessageLookupByLibrary.simpleMessage(
"Demnächst: Gesichter & magische Suche ✨"),
"searchHintText": MessageLookupByLibrary.simpleMessage(
"Alben, Monate, Tage, Jahre, ..."),
"searchLocationEmptySection": MessageLookupByLibrary.simpleMessage(
"Gruppiere Fotos, die innerhalb des Radius eines bestimmten Fotos aufgenommen wurden"),
"searchPeopleEmptySection": MessageLookupByLibrary.simpleMessage(

View file

@ -1171,8 +1171,6 @@ class MessageLookup extends MessageLookupByLibrary {
"searchHint4": MessageLookupByLibrary.simpleMessage("Location"),
"searchHint5": MessageLookupByLibrary.simpleMessage(
"Coming soon: Faces & magic search ✨"),
"searchHintText": MessageLookupByLibrary.simpleMessage(
"Albums, months, days, years, ..."),
"searchLocationEmptySection": MessageLookupByLibrary.simpleMessage(
"Group photos that are taken within some radius of a photo"),
"searchPeopleEmptySection": MessageLookupByLibrary.simpleMessage(

View file

@ -1036,8 +1036,6 @@ class MessageLookup extends MessageLookupByLibrary {
MessageLookupByLibrary.simpleMessage("Nombre del álbum"),
"searchByExamples": MessageLookupByLibrary.simpleMessage(
"• Nombres de álbumes (por ejemplo, \"Cámara\")\n• Tipos de archivos (por ejemplo, \"Videos\", \".gif\")\n• Años y meses (por ejemplo, \"2022\", \"Enero\")\n• Vacaciones (por ejemplo, \"Navidad\")\n• Descripciones fotográficas (por ejemplo, \"#diversión\")"),
"searchHintText": MessageLookupByLibrary.simpleMessage(
"Álbunes, meses, días, años, ..."),
"security": MessageLookupByLibrary.simpleMessage("Seguridad"),
"selectALocation":
MessageLookupByLibrary.simpleMessage("Select a location"),

View file

@ -1194,8 +1194,6 @@ class MessageLookup extends MessageLookupByLibrary {
"searchHint4": MessageLookupByLibrary.simpleMessage("Emplacement"),
"searchHint5": MessageLookupByLibrary.simpleMessage(
"Bientôt: Visages & recherche magique ✨"),
"searchHintText": MessageLookupByLibrary.simpleMessage(
"Albums, mois, jours, années, ..."),
"searchLocationEmptySection": MessageLookupByLibrary.simpleMessage(
"Grouper les photos qui sont prises dans un certain angle d\'une photo"),
"searchPeopleEmptySection": MessageLookupByLibrary.simpleMessage(

View file

@ -1130,8 +1130,6 @@ class MessageLookup extends MessageLookupByLibrary {
MessageLookupByLibrary.simpleMessage("Nome album"),
"searchByExamples": MessageLookupByLibrary.simpleMessage(
"• Nomi degli album (es. \"Camera\")\n• Tipi di file (es. \"Video\", \".gif\")\n• Anni e mesi (e.. \"2022\", \"gennaio\")\n• Vacanze (ad es. \"Natale\")\n• Descrizioni delle foto (ad es. “#mare”)"),
"searchHintText": MessageLookupByLibrary.simpleMessage(
"Album, mesi, giorni, anni, ..."),
"security": MessageLookupByLibrary.simpleMessage("Sicurezza"),
"selectALocation":
MessageLookupByLibrary.simpleMessage("Select a location"),

View file

@ -1218,8 +1218,6 @@ class MessageLookup extends MessageLookupByLibrary {
"searchHint4": MessageLookupByLibrary.simpleMessage("Locatie"),
"searchHint5": MessageLookupByLibrary.simpleMessage(
"Binnenkort beschikbaar: Gezichten & magische zoekopdrachten ✨"),
"searchHintText": MessageLookupByLibrary.simpleMessage(
"Albums, maanden, dagen, jaren, ..."),
"searchLocationEmptySection": MessageLookupByLibrary.simpleMessage(
"Foto\'s groeperen die in een bepaalde straal van een foto worden genomen"),
"searchPeopleEmptySection": MessageLookupByLibrary.simpleMessage(

View file

@ -1213,8 +1213,6 @@ class MessageLookup extends MessageLookupByLibrary {
"searchHint4": MessageLookupByLibrary.simpleMessage("Local"),
"searchHint5": MessageLookupByLibrary.simpleMessage(
"Em breve: Rostos e busca mágica ✨"),
"searchHintText": MessageLookupByLibrary.simpleMessage(
"Álbuns, meses, dias, anos, ..."),
"searchLocationEmptySection": MessageLookupByLibrary.simpleMessage(
"Fotos de grupo que estão sendo tiradas em algum raio da foto"),
"searchPeopleEmptySection": MessageLookupByLibrary.simpleMessage(

View file

@ -980,7 +980,6 @@ class MessageLookup extends MessageLookupByLibrary {
"searchHint3": MessageLookupByLibrary.simpleMessage("相册、文件名和类型"),
"searchHint4": MessageLookupByLibrary.simpleMessage("位置"),
"searchHint5": MessageLookupByLibrary.simpleMessage("即将到来:面部和魔法搜索✨"),
"searchHintText": MessageLookupByLibrary.simpleMessage("相册,月,日,年,..."),
"searchLocationEmptySection":
MessageLookupByLibrary.simpleMessage("在照片的一定半径内拍摄的几组照片"),
"searchPeopleEmptySection":

View file

@ -5785,16 +5785,6 @@ class S {
);
}
/// `Albums, months, days, years, ...`
String get searchHintText {
return Intl.message(
'Albums, months, days, years, ...',
name: 'searchHintText',
desc: '',
args: [],
);
}
/// ` Album names (e.g. "Camera")\n Types of files (e.g. "Videos", ".gif")\n Years and months (e.g. "2022", "January")\n Holidays (e.g. "Christmas")\n Photo descriptions (e.g. #fun)`
String get searchByExamples {
return Intl.message(

View file

@ -810,7 +810,6 @@
"archiveAlbum": "Album archivieren",
"calculating": "Wird berechnet...",
"pleaseWaitDeletingAlbum": "Bitte warten, Album wird gelöscht",
"searchHintText": "Alben, Monate, Tage, Jahre, ...",
"searchByExamples": "• Albumnamen (z.B. \"Kamera\")\n• Dateitypen (z.B. \"Videos\", \".gif\")\n• Jahre und Monate (z.B. \"2022\", \"Januar\")\n• Feiertage (z.B. \"Weihnachten\")\n• Fotobeschreibungen (z.B. \"#fun\")",
"youCanTrySearchingForADifferentQuery": "Sie können versuchen, nach einer anderen Abfrage suchen.",
"noResultsFound": "Keine Ergebnisse gefunden",

View file

@ -819,7 +819,6 @@
"archiveAlbum": "Archive album",
"calculating": "Calculating...",
"pleaseWaitDeletingAlbum": "Please wait, deleting album",
"searchHintText": "Albums, months, days, years, ...",
"searchByExamples": "• Album names (e.g. \"Camera\")\n• Types of files (e.g. \"Videos\", \".gif\")\n• Years and months (e.g. \"2022\", \"January\")\n• Holidays (e.g. \"Christmas\")\n• Photo descriptions (e.g. “#fun”)",
"youCanTrySearchingForADifferentQuery": "You can try searching for a different query.",
"noResultsFound": "No results found",

View file

@ -746,7 +746,6 @@
"archiveAlbum": "Archivar álbum",
"calculating": "Calculando...",
"pleaseWaitDeletingAlbum": "Por favor espere, borrando álbum",
"searchHintText": "Álbunes, meses, días, años, ...",
"searchByExamples": "• Nombres de álbumes (por ejemplo, \"Cámara\")\n• Tipos de archivos (por ejemplo, \"Videos\", \".gif\")\n• Años y meses (por ejemplo, \"2022\", \"Enero\")\n• Vacaciones (por ejemplo, \"Navidad\")\n• Descripciones fotográficas (por ejemplo, \"#diversión\")",
"youCanTrySearchingForADifferentQuery": "Puedes intentar buscar una consulta diferente.",
"noResultsFound": "No se han encontrado resultados",

View file

@ -794,7 +794,6 @@
"archiveAlbum": "Archiver l'album",
"calculating": "Calcul en cours...",
"pleaseWaitDeletingAlbum": "Veuillez patienter, suppression de l'album",
"searchHintText": "Albums, mois, jours, années, ...",
"searchByExamples": "• Noms d'albums (par exemple \"Caméra\")\n• Types de fichiers (par exemple \"Vidéos\", \".gif\")\n• Années et mois (par exemple \"2022\", \"Janvier\")\n• Vacances (par exemple \"Noël\")\n• Descriptions de photos (par exemple \"#fun\")",
"youCanTrySearchingForADifferentQuery": "Vous pouvez essayer de rechercher une autre requête.",
"noResultsFound": "Aucun résultat trouvé",

View file

@ -794,7 +794,6 @@
"archiveAlbum": "Archivia album",
"calculating": "Calcolando...",
"pleaseWaitDeletingAlbum": "Attendere, sto eliminando l'album",
"searchHintText": "Album, mesi, giorni, anni, ...",
"searchByExamples": "• Nomi degli album (es. \"Camera\")\n• Tipi di file (es. \"Video\", \".gif\")\n• Anni e mesi (e.. \"2022\", \"gennaio\")\n• Vacanze (ad es. \"Natale\")\n• Descrizioni delle foto (ad es. “#mare”)",
"youCanTrySearchingForADifferentQuery": "Prova con una ricerca differente.",
"noResultsFound": "Nessun risultato trovato",

View file

@ -819,7 +819,6 @@
"archiveAlbum": "Album archiveren",
"calculating": "Berekenen...",
"pleaseWaitDeletingAlbum": "Een ogenblik geduld, album wordt verwijderd",
"searchHintText": "Albums, maanden, dagen, jaren, ...",
"searchByExamples": "• Albumnamen (bijv. \"Camera\")\n• Types van bestanden (bijv. \"Video's\", \".gif\")\n• Jaren en maanden (bijv. \"2022\", \"januari\")\n• Feestdagen (bijv. \"Kerstmis\")\n• Fotobeschrijvingen (bijv. \"#fun\")",
"youCanTrySearchingForADifferentQuery": "U kunt proberen een andere zoekopdracht te vinden.",
"noResultsFound": "Geen resultaten gevonden",

View file

@ -819,7 +819,6 @@
"archiveAlbum": "Arquivar álbum",
"calculating": "Calculando...",
"pleaseWaitDeletingAlbum": "Por favor, aguarde, excluindo álbum",
"searchHintText": "Álbuns, meses, dias, anos, ...",
"searchByExamples": "• Nomes de álbuns (ex: \"Câmera\")\n• Tipos de arquivos (ex.: \"Vídeos\", \".gif\")\n• Anos e meses (e.. \"2022\", \"Janeiro\")\n• Feriados (por exemplo, \"Natal\")\n• Descrições de fotos (por exemplo, \"#divertido\")",
"youCanTrySearchingForADifferentQuery": "Você pode tentar procurar uma consulta diferente.",
"noResultsFound": "Nenhum resultado encontrado",

View file

@ -819,7 +819,6 @@
"archiveAlbum": "存档相册",
"calculating": "正在计算...",
"pleaseWaitDeletingAlbum": "请稍候,正在删除相册",
"searchHintText": "相册,月,日,年,...",
"searchByExamples": "• 相册名称(例如“相机”)\n• 文件类型(例如“视频”、“.gif”\n• 年份和月份例如“2022”、“一月”\n• 假期(例如“圣诞节”)\n• 照片说明(例如“#和女儿独居,好开心啊”)",
"youCanTrySearchingForADifferentQuery": "您可以尝试搜索不同的查询。",
"noResultsFound": "未找到任何结果",

View file

@ -16,7 +16,7 @@ class UpdateService {
static final UpdateService instance = UpdateService._privateConstructor();
static const kUpdateAvailableShownTimeKey = "update_available_shown_time_key";
static const changeLogVersionKey = "update_change_log_key";
static const currentChangeLogVersion = 14;
static const currentChangeLogVersion = 15;
LatestVersionInfo? _latestVersion;
final _logger = Logger("UpdateService");

View file

@ -1,4 +1,5 @@
import "dart:async";
import "dart:io";
import 'package:flutter/material.dart';
import "package:photos/generated/l10n.dart";
@ -84,14 +85,22 @@ class _ChangeLogPageState extends State<ChangeLogPage> {
ButtonWidget(
buttonType: ButtonType.trailingIconSecondary,
buttonSize: ButtonSize.large,
labelText: S.of(context).joinDiscord,
icon: Icons.discord_outlined,
// labelText: S.of(context).joinDiscord,
labelText: "Why we open sourced",
// icon: Icons.discord_outlined,
icon: Icons.rocket_rounded,
iconColor: enteColorScheme.primary500,
onTap: () async {
// unawaited(
// launchUrlString(
// "https://discord.com/invite/z2YVKkycX3",
// mode: LaunchMode.externalApplication,
// ),
// );
unawaited(
launchUrlString(
"https://discord.com/invite/z2YVKkycX3",
mode: LaunchMode.externalApplication,
"https://ente.io/blog/open-sourcing-our-server/",
mode: LaunchMode.inAppBrowserView,
),
);
},
@ -120,11 +129,27 @@ class _ChangeLogPageState extends State<ChangeLogPage> {
Widget _getChangeLog() {
final scrollController = ScrollController();
final List<ChangeLogEntry> items = [];
if (Platform.isAndroid) {
items.add(
ChangeLogEntry(
"Home Widget ✨",
'Introducing our new Android widget! Enjoy your favourite memories directly on your home screen.',
),
);
}
items.addAll([
ChangeLogEntry(
"Map View ✨",
'You can now view the location where a photo was clicked.\n'
'\nOpen a photo and tap the Info button to view its place on the map!',
"Redesigned Discovery Tab",
'We\'ve given it a fresh new look for improved design and better visual separation between each section.',
),
ChangeLogEntry(
"Location Clustering ",
'Now, see photos automatically organize into clusters around a radius of populated cities.',
),
ChangeLogEntry(
"Ente is now fully Open Source!",
'We took the final step in our open source journey.\n\n'
'Our clients had always been open source. Now, we have released the source code for our servers.',
),
ChangeLogEntry(
"Bug Fixes",

View file

@ -139,12 +139,9 @@ class SearchWidgetState extends State<SearchWidget> {
autocorrect: false,
// Above parameters are to disable auto-suggestion
decoration: InputDecoration(
// hintText: S.of(context).searchHintText,
//TODO: Extract string
hintText: "Search",
filled: true,
contentPadding: const EdgeInsets.symmetric(
vertical: 10,
),
border: const UnderlineInputBorder(
borderSide: BorderSide.none,
),

View file

@ -12,7 +12,7 @@ description: ente photos application
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 0.8.65+585
version: 0.8.66+586
publish_to: none
environment: