Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 3.2.3 — Bug fixes #582

Merged
merged 34 commits into from
Oct 17, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
dab3d26
Changes contact email address for solving rejection issues
EddyLB Sep 11, 2024
a96b28e
Fixes missing dYSM file not created, increments app version
EddyLB Sep 21, 2024
7afca3b
Fixes max size of downsampled image
EddyLB Sep 21, 2024
9c40232
Fixes content mode of thumbnails shown in albums
EddyLB Sep 21, 2024
f03850a
Moves getObjectCount() where it should be
EddyLB Sep 22, 2024
5c2e48e
Corrects comments
EddyLB Sep 22, 2024
93e0b48
Replaces "-opt" images produced with v3.2.2
EddyLB Sep 22, 2024
39f4c27
Removes useless log
EddyLB Sep 22, 2024
2e0f570
Adds v3.2.3 release notes
EddyLB Sep 22, 2024
d7211b9
Moves constant to appropriate section
EddyLB Sep 22, 2024
38742cb
Version 3.2.3 build 592
EddyLB Sep 22, 2024
6acf559
Version 3.2.3 build 593 for TestFlight testing
EddyLB Sep 24, 2024
78a43a4
Fixes showing time zone on iPad - should not because unknown
EddyLB Sep 25, 2024
6c8a385
PHAsset.creationDate returns UTC or real time so we do not show the t…
EddyLB Sep 29, 2024
7de9d61
Extract local creation dates of photos and videos from metadata
EddyLB Sep 29, 2024
22ea4cb
Reverts thumbnails to aspect fill content mode
EddyLB Sep 29, 2024
5d00dd4
Fixes calculation of maxPixelSize which did not account for large/sma…
EddyLB Sep 29, 2024
65c770e
Version 3.2.3 build 594 for TestFlight testing
EddyLB Sep 29, 2024
bf42ed9
Check if the session is still active every 60 seconds or more
EddyLB Oct 1, 2024
0d498b6
Adopts debugPrint() everywhere
EddyLB Oct 1, 2024
a175f8e
Adopts preparingThumbnail() method (+iOS 15) and fixes issue by repla…
EddyLB Oct 6, 2024
b0fe71e
Fixes memory issue encountered when loading full-resolution images an…
EddyLB Oct 6, 2024
bee20bf
Manages situations where the server does not provide the expected tot…
EddyLB Oct 10, 2024
8d6d857
Checks the session if the connection has changed (WiFi <-> cellular)
EddyLB Oct 11, 2024
59b2558
Fixes lack of debug information
EddyLB Oct 11, 2024
688579b
Switches from full to xxlarge, xlarge, large or medium resolution whe…
EddyLB Oct 11, 2024
7ffc5cd
Fixes memory leak and crash, fixes download not resumed
EddyLB Oct 11, 2024
9c41909
Fixes memory leak and crash, fixes main thread calls
EddyLB Oct 12, 2024
0dff635
Simplifies code
EddyLB Oct 12, 2024
3474763
Fixes memory leak generated by UIImage.jpegData()
EddyLB Oct 12, 2024
1cf78d8
Adds iPhone 16 models
EddyLB Oct 12, 2024
cf1c0ed
Translates "close" button
EddyLB Oct 12, 2024
3366c44
Version 3.2.3 build 595 for TestFlight testing and App Store
EddyLB Oct 12, 2024
41f637e
Updates screenshots for App Store
EddyLB Oct 16, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 67 additions & 17 deletions Supporting Targets/piwigoScreenshots/piwigoScreenshots.swift
Original file line number Diff line number Diff line change
Expand Up @@ -43,32 +43,81 @@ class piwigoScreenshots: XCTestCase {
let deviceType = UIDevice().modelName
sleep(3);

// Screenshot #1: swipe left and reveal album actions
var index = 1
if deviceType.hasPrefix("iPad") {
index = 7
// Settings
let withAlbumDescriptions = false

// Screenshot #1:
if withAlbumDescriptions {
// Swipe left to reveal album actions when displaying albums with description
var index = 1
if deviceType.hasPrefix("iPad") {
index = 7
}
let collectionCell = app.collectionViews.children(matching: .cell).element(boundBy: index)
let tableQuery = collectionCell.children(matching: .other).element.tables.element(boundBy: 0)
sleep(4);
tableQuery.swipeLeft()
}
let collectionCell = app.collectionViews.children(matching: .cell).element(boundBy: index)
let tableQuery = collectionCell.children(matching: .other).element.tables.element(boundBy: 0)
sleep(4);
tableQuery.swipeLeft()
snapshot("Image01")

// Screenshot #2: collection of images
app.collectionViews.children(matching: .cell).element(boundBy: 2).tap()
sleep(2);
if deviceType.hasPrefix("iPhone") {
app.collectionViews.children(matching: .cell).element(boundBy: 2).swipeUp()
sleep(2);
if withAlbumDescriptions {
app.collectionViews.children(matching: .cell).element(boundBy: 2).swipeUp()
sleep(2);
} else {
switch deviceType {
case "iPhone SE (1st generation)": // 4-inch
for _ in 1...2 {
app.collectionViews.firstMatch.swipeUp(velocity: 200)
sleep(1)
}
case "iPhone SE (3rd generation)": // 4.7-inch
for _ in 1...2 {
app.collectionViews.firstMatch.swipeUp(velocity: 200)
sleep(1)
}
case "iPhone 8 Plus": // 5.5-inch
for _ in 1...2 {
app.collectionViews.firstMatch.swipeUp(velocity: 200)
sleep(1)
}
case "iPhone 14": // 5.8-inch
for _ in 1...2 {
app.collectionViews.firstMatch.swipeUp(velocity: 200)
sleep(1)
}
case "iPhone 14 Pro": // 6.1-inch
for _ in 1...2 {
app.collectionViews.firstMatch.swipeUp(velocity: 200)
sleep(1)
}
case "iPhone 14 Plus": // 6.5-inch
for _ in 1...2 {
app.collectionViews.firstMatch.swipeUp(velocity: 200)
sleep(1)
}
case "iPhone 15 Pro Max": // 6.7-inch
for _ in 1...2 {
app.collectionViews.firstMatch.swipeUp(velocity: 200)
sleep(1)
}
default:
break
}
}
}
snapshot("Image02")


/*
// Screenshot #3: image previewed
// https://developer.apple.com/help/app-store-connect/reference/screenshot-specifications
app.collectionViews.cells["Clos de Vougeot"].tap()
sleep(3)
switch deviceType {
case "iPhone SE": // 4-inch
case "iPhone SE (1st generation)": // 4-inch
app.images.element(boundBy: 0).pinch(withScale: 1.1, velocity: 2.0)
sleep(1)
app.images.element(boundBy: 0).tap()
Expand Down Expand Up @@ -127,7 +176,7 @@ class piwigoScreenshots: XCTestCase {
app.navigationBars.buttons.element(boundBy: 0).tap()
sleep(2) // Leave time for animation
switch deviceType {
case "iPhone SE": // 4-inch
case "iPhone SE (1st generation)": // 4-inch
for _ in 1...6 {
app.collectionViews.firstMatch.swipeUp(velocity: 200)
sleep(1)
Expand Down Expand Up @@ -196,7 +245,7 @@ class piwigoScreenshots: XCTestCase {
app.buttons["Select"].tap()
sleep(1)
switch deviceType {
case "iPhone SE": // 4-inch
case "iPhone SE (1st generation)": // 4-inch
app.collectionViews.children(matching: .cell).element(boundBy: 8).tap()
app.collectionViews.children(matching: .cell).element(boundBy: 9).tap()
app.collectionViews.children(matching: .cell).element(boundBy: 12).tap()
Expand Down Expand Up @@ -278,7 +327,7 @@ class piwigoScreenshots: XCTestCase {
app.navigationBars["editParams"].buttons["Cancel"].tap()
sleep(1) // Leave time for animation
switch deviceType {
case "iPhone SE": // 4-inch
case "iPhone SE (1st generation)": // 4-inch
for _ in 1...6 {
app.collectionViews.firstMatch.swipeDown(velocity: 200)
sleep(1)
Expand Down Expand Up @@ -329,7 +378,7 @@ class piwigoScreenshots: XCTestCase {
app.collectionViews.cells["Hotel de Coimbra"].tap()
sleep(2)
switch deviceType {
case "iPhone SE", // 4-inch
case "iPhone SE (1st generation)": // 4-inch
"iPhone SE (3rd generation)", // 4.7-inch
"iPhone 8 Plus", // 5.5-inch
"iPhone 14", // 5.8-inch
Expand Down Expand Up @@ -363,7 +412,7 @@ class piwigoScreenshots: XCTestCase {
app.navigationBars.buttons.element(boundBy: 0).tap()
sleep(2) // Leave time for animation
switch deviceType {
case "iPhone SE", // 4-inch
case "iPhone SE (1st generation)": // 4-inch
"iPhone SE (3rd generation)", // 4.7-inch
"iPhone 8 Plus", // 5.5-inch
"iPhone 14", // 5.8-inch
Expand Down Expand Up @@ -458,5 +507,6 @@ class piwigoScreenshots: XCTestCase {
app.tables["settings"].firstMatch.swipeUp(velocity: 200)
sleep(2) // Leave time for animation
snapshot("Image10")
*/
}
}
19 changes: 11 additions & 8 deletions fastlane/Snapfile
Original file line number Diff line number Diff line change
Expand Up @@ -48,14 +48,14 @@ devices([
# "iPhone 8 Plus", # 5.5-inch iOS 16.4
# "iPhone 14", # 5.8-inch
# "iPhone 13 Pro", # Wiki
# "iPhone 14 Pro", # 6.1-inch
# "iPhone 14 Pro", # 6.3-inch
# "iPhone 14 Plus", # 6.5-inch
# "iPhone 15 Pro Max", # 6.7-inch
# "iPhone 15 Pro Max", # 6.9-inch
# "iPad Pro (9.7-inch)", # 9.7-inch iOS 16.4
# "iPad Pro (10.5-inch)", # 10.5-inch
# "iPad Pro (11-inch) (4th generation)", # 11-inch
# "iPad Pro (12.9-inch) (2nd generation)", # 12.9-inch
"iPad Pro (12.9-inch) (6th generation)" # 12.9-inch
"iPad Pro (11-inch) (4th generation)", # 11-inch
"iPad Pro (12.9-inch) (6th generation)" # 13-inch
])

# ["pt", "pt_BR"] # Portuguese with Brazilian locale
Expand Down Expand Up @@ -83,16 +83,19 @@ test_without_building(true)
output_directory("fastlane/screenshots")
concurrent_simulators(true)
skip_open_summary(true)
number_of_retries(1)
number_of_retries(0)

# Command below fails with iOS +16.1, 17.x:
#override_status_bar(true)
# Command below fails with iOS +16.1, 17.x, 18.x:
# override_status_bar(true)
# So use SimulatorStatusMagic to configure iOS 16+ simulators
# See https://github.com/shinydevelopment/SimulatorStatusMagic
# iOS 16+: Install the SimulatorStatusMagic app in the simulator
# and apply the configuration
# iOS 17+: Compile library with Xcode
# Launch the iOS 17+ simulator to configure (piwigo scheme)
# Launch the iOS 17+ simulator (piwigo scheme), stop app
# Execute: ../SimulatorStatusMagic/build_and_inject.sh booted
# iOS 18+: Compile library with Xcode
# Launch the iOS 18+ simulator (piwigo scheme), stop app
# Execute: ../SimulatorStatusMagic/build_and_inject.sh booted

# clear_previous_screenshots(true)
Expand Down
5 changes: 1 addition & 4 deletions fastlane/metadata/da/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• Vedtager album foto sortering muligheder
• Tilføjer on-the-fly foto sortering muligheder
• Tilføjer rotation af uploadede fotos (kræver rotateImage plugin)
• Fejlrettelser
Fejlrettelser
5 changes: 1 addition & 4 deletions fastlane/metadata/de-DE/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• Übernimmt die Sortieroptionen für Albenfotos
• Fügt Optionen für die fliegende Sortierung von Fotos hinzu
• Rotation der hochgeladenen Fotos (erfordert das rotateImage-Plugin)
• Fehlerbehebungen
Fehlerbehebungen
5 changes: 1 addition & 4 deletions fastlane/metadata/en-US/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• Adopts album photo sorting options
• Adds on-the-fly photo sorting options
• Adds rotation of uploaded photos (requires the rotateImage plugin)
• Bug fixes
Bug fixes
5 changes: 1 addition & 4 deletions fastlane/metadata/es-ES/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• Adoptadas opciones de clasificación de las fotografías de un álbum
• Añadidas opciones de clasificación de fotografías sobre la marcha
• Añadida rotación de fotos cargadas
• Corrección de errores
Corrección de errores
5 changes: 1 addition & 4 deletions fastlane/metadata/fr-FR/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• Adopte les options de tri des photos des albums
• Ajoute des options de tri des photos à la volée
• Ajoute la rotation des photos téléchargées (nécessite le plugin rotateImage)
• Corrections de bugs
Correction de bugs
5 changes: 1 addition & 4 deletions fastlane/metadata/hu/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• Elfogadta az album fotók rendezési lehetőségeit
• Függőleges fotóválogatási lehetőségek hozzáadása
• Hozzáadja a feltöltött fényképek forgatását
• Hibajavítások
Hibajavítások
5 changes: 1 addition & 4 deletions fastlane/metadata/it/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• Adotta opzioni di ordinamento foto album
• Aggiunge opzioni di ordinamento foto al volo
• Aggiunge la rotazione delle foto caricate (richiede il plugin rotateimage)
• Correzioni di bug
Correzioni di bug
5 changes: 1 addition & 4 deletions fastlane/metadata/ja/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• アルバム写真の並べ替えオプションを採用
• オンザフライ写真並べ替えオプションの追加
• アップロードした写真の回転機能を追加
• バグ修正
• バグの修正
5 changes: 1 addition & 4 deletions fastlane/metadata/nl-NL/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• Voegt albumfoto sortering opties
• Voegt op-the-fly foto sortering opties
• Voegt rotatie van geüploade foto's toe (vereist de rotateImage plugin)
• Foutjes verbeterd
Foutjes verbeterd
5 changes: 1 addition & 4 deletions fastlane/metadata/pl/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• Można dopasować opcje sortowania zdjęć w albumie
• Dodaje opcje sortowania zdjęć w locie
• Dodaje możliwość obracania przesyłanych zdjęć
• Poprawki błędów
Poprawki błędów
4 changes: 2 additions & 2 deletions fastlane/metadata/review_information/notes.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
This version adopts the album sorting options of the web UI, introduces an option for sorting photos on-the-fly and a command for rotating photos already uploaded to the Piwigo server. The MBProgressHUD library has also been removed and the app now uses no third party library.
This version brings a command for deleting a selection of photos/videos stored in the device and expands or adds contextual menus for selecting, sharing, deleting or uploading photos. It also fixes the bugs listed in the TestFlight section.

Here is the address of the server requiring the above credentials and allowing to test all functionalities: https://piwigo.lelievre-berna.net/Dev/
Here is the address of the server requiring the above credentials and allowing to test all functionalities: https://piwigo.lelievre-berna.net/15.x/
And here are servers you can try without credentials: https://raia.com, https://www.neilfitzgeraldphoto.co.nz/gallery, http://www.dongshawhwei.com/photos.

The privacy policy is provided in the app in Chinese (Simplified), Danish, Dutch, English, French, German, Hungarian, Indonesian, Italian, Japanese, Polish, Russian, Spanish and Swedish.
5 changes: 1 addition & 4 deletions fastlane/metadata/ru/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• Принимает сортировку фото альбома
• Добавляет параметры сортировки на лету
• Добавляет поворот загруженных фотографий (требуется плагин rotateImage)
• Исправления ошибок
Исправления ошибок
5 changes: 1 addition & 4 deletions fastlane/metadata/sv/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• Antar sorteringsalternativ för albumfoto
• Lägger till foton i farten sorteringsalternativ
• Lägger till rotation av uppladdade bilder (kräver rotateImage plugin)
• Felrättelser
Buggfixar
5 changes: 1 addition & 4 deletions fastlane/metadata/zh-Hans/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• 通过相册照片排序选项
• 添加实时照片排序选项
• 增加上传照片的旋转(需要 rotateImage 插件)
• Bug 修复
小错误修复和界面改进
5 changes: 1 addition & 4 deletions fastlane/metadata/zh-Hant/release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
• 採用相簿圖片旋轉選項
• 添加即時(on-the-fly)圖片排序選項
• 新增旋轉上傳圖片的功能
• 錯誤修正
小型錯誤修正及介面改進
Loading