Skip to content

Commit 3551f3a

Browse files
committed
Merge branch 'release/1.0.0' into 'master'
Release 1.0.0 See merge request madd/ios/stratoionos/easy-storage!54
2 parents bb4be9a + 8aaa86b commit 3551f3a

File tree

838 files changed

+29747
-13390
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

838 files changed

+29747
-13390
lines changed

.github/workflows/additional-targets.yml

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -27,17 +27,6 @@ jobs:
2727
- name: Set env var
2828
run: echo "DEVELOPER_DIR=$(xcode-select --print-path)" >> $GITHUB_ENV
2929
- uses: actions/checkout@v4
30-
- name: Restore Carhage Cache
31-
uses: actions/cache@v3
32-
id: carthage-cache
33-
with:
34-
path: Carthage
35-
key: ${{ runner.os }}-carthage-${{ hashFiles('**/Cartfile.resolved') }}
36-
restore-keys: |
37-
${{ runner.os }}-carthage-
38-
- name: Carthage
39-
if: steps.carthage-cache.outputs.cache-hit != 'true'
40-
run: carthage bootstrap --use-xcframeworks --platform iOS
4130
- name: Download GoogleService-Info.plist
4231
run: wget "https://raw.githubusercontent.com/firebase/quickstart-ios/master/mock-GoogleService-Info.plist" -O GoogleService-Info.plist
4332
- name: Build iOS Share

.github/workflows/xcode.yml

Lines changed: 50 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -6,44 +6,35 @@ on:
66
- master
77
- develop
88
pull_request:
9-
types: [synchronize, opened, reopened, ready_for_review]
9+
types:
10+
- synchronize
11+
- opened
12+
- reopened
13+
- ready_for_review
1014
branches:
1115
- master
1216
- develop
1317

1418
env:
1519
PROJECT: Nextcloud.xcodeproj
16-
DESTINATION: platform=iOS Simulator,name=iPhone 15,OS=17.2
20+
DESTINATION: platform=iOS Simulator,name=iPhone 16,OS=18.2
1721
SCHEME: Nextcloud
18-
SERVER_BRANCH: stable28
19-
PHP_VERSION: 8.2
22+
SERVER_BRANCH: stable30
23+
PHP_VERSION: 8.3
2024

2125
jobs:
2226
build:
2327
name: Build
24-
runs-on: macos-13
28+
runs-on: macos-15
2529
if: github.event.pull_request.draft == false
2630

2731
steps:
2832
- uses: actions/checkout@v4
2933

30-
- name: Restore Carhage Cache
31-
uses: actions/cache@v3
32-
id: carthage-cache
33-
with:
34-
path: Carthage
35-
key: ${{ runner.os }}-carthage-${{ hashFiles('**/Cartfile.resolved') }}
36-
restore-keys: |
37-
${{ runner.os }}-carthage-
38-
39-
- name: Carthage
40-
if: steps.carthage-cache.outputs.cache-hit != 'true'
41-
run: carthage bootstrap --use-xcframeworks --platform iOS
42-
4334
- name: Download GoogleService-Info.plist
4435
run: wget "https://raw.githubusercontent.com/firebase/quickstart-ios/master/mock-GoogleService-Info.plist" -O GoogleService-Info.plist
4536

46-
- name: Build Nextcloud iOS
37+
- name: Run Xcode Build
4738
run: |
4839
set -o pipefail && \
4940
xcodebuild build-for-testing \
@@ -52,43 +43,51 @@ jobs:
5243
-derivedDataPath "DerivedData" \
5344
| xcbeautify --quieter
5445
55-
- name: Upload test build
46+
- name: Upload Build Products
5647
uses: actions/upload-artifact@v4
5748
with:
58-
name: Nextcloud iOS
49+
name: Nextcloud for iOS
5950
path: DerivedData/Build/Products
6051
retention-days: 4
6152

6253
test:
63-
name: Test
64-
runs-on: macos-13
54+
name: Run Tests
55+
runs-on: macos-15
6556
needs: [build]
6657

67-
if: github.event.pull_request.draft == false
58+
# Temporarily, project has no effective tests except UI tests which are unfeasible on virtualized GitHub runners (see #3291)
59+
# Previously: github.event.pull_request.draft == false
60+
if: false
6861

6962
steps:
7063
- uses: actions/checkout@v4
7164

72-
- name: Set up php ${{ env.PHP_VERSION }}
73-
uses: shivammathur/setup-php@8872c784b04a1420e81191df5d64fbd59d3d3033 # v2.30.0
65+
- name: Prepare PHP ${{ env.PHP_VERSION }}
66+
uses: shivammathur/setup-php@v2
7467
with:
7568
php-version: ${{ env.PHP_VERSION }}
7669
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
7770
extensions: apcu, bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, pgsql, pdo_pgsql
7871
coverage: none
7972
ini-file: development
80-
# Temporary workaround for missing pcntl_* in PHP 8.3: ini-values: apc.enable_cli=on
8173
ini-values: apc.enable_cli=on, disable_functions=
8274

83-
- name: Checkout server
84-
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
75+
- name: Checkout Nextcloud Server
76+
uses: actions/checkout@v4
8577
with:
8678
submodules: true
8779
repository: nextcloud/server
8880
path: server
8981
ref: ${{ env.SERVER_BRANCH }}
9082

91-
- name: Set up Nextcloud
83+
- name: Checkout Download Limits App
84+
uses: actions/checkout@v4
85+
with:
86+
repository: nextcloud/files_downloadlimit
87+
path: server/apps/files_downloadlimit
88+
ref: ${{ env.SERVER_BRANCH }}
89+
90+
- name: Install Nextcloud Server
9291
run: |
9392
mkdir server/data
9493
./server/occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
@@ -97,18 +96,33 @@ jobs:
9796
./server/occ config:system:set ratelimit.protection.enabled --value false --type bool
9897
./server/occ config:system:set memcache.local --value="\\OC\\Memcache\\APCu"
9998
./server/occ config:system:set memcache.distributed --value="\\OC\\Memcache\\APCu"
99+
./server/occ app:enable files_downloadlimit
100100
./server/occ background:cron
101101
PHP_CLI_SERVER_WORKERS=5 php -S localhost:8080 -t server/ &
102102
103-
- name: Download test build
103+
- name: Download Build
104104
uses: actions/download-artifact@v4
105105
with:
106-
name: Nextcloud iOS
106+
name: Nextcloud for iOS
107107

108-
- name: Check server status
108+
- name: Assert Nextcloud Server Status
109109
run: curl -s --retry 5 --retry-delay 60 --retry-all-errors http://localhost:8080/status.php || true
110110

111-
- name: Test Nextcloud iOS
111+
- name: Boot iOS Simulator
112+
run: |
113+
xcrun simctl boot "iPhone 16"
114+
xcrun simctl bootstatus "iPhone 16" || echo "Simulator booted"
115+
116+
- name: Check if Safari is installed
117+
run: |
118+
if xcrun simctl listapps booted | grep -q com.apple.mobilesafari; then
119+
echo "Safari is installed in the simulator."
120+
else
121+
echo "Safari is NOT installed in the simulator."
122+
exit 1
123+
fi
124+
125+
- name: Run Xcode Test
112126
run: |
113127
set -o pipefail && \
114128
xcodebuild test-without-building \
@@ -117,13 +131,11 @@ jobs:
117131
-derivedDataPath "DerivedData" \
118132
-test-iterations 3 \
119133
-retry-tests-on-failure \
120-
-resultBundlePath "TestResult.xcresult" \
121-
| xcbeautify --quieter
134+
-resultBundlePath "TestResult.xcresult"
122135
123-
- name: Upload test results
136+
- name: Upload Xcode Test Results
124137
uses: actions/upload-artifact@v4
125138
if: ${{ !cancelled() }}
126139
with:
127140
name: TestResult.xcresult
128141
path: "TestResult.xcresult"
129-

.gitlab-ci.yml

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ variables:
33
IPA_PATH: "${outputDirPath}/${scheme}.ipa"
44
DSYM_PATH: "*.dSYM.zip"
55
scheme: "Nextcloud"
6-
dev_configuration: "Release"
6+
dev_configuration: "Alpha"
77
beta_configuration: "Beta"
88
archive_path: "${outputDirPath}/${scheme}"
99
export_method: "ad-hoc"
@@ -14,15 +14,12 @@ stages:
1414

1515
.mac_general_scripts: &mac_general_scripts
1616
- security unlock-keychain -p $PASSWORD_BUILDE ~/Library/Keychains/login.keychain-db
17-
- brew install carthage
1817
- brew install jq
18+
- gem install fastlane --user-install
1919
- fastlane -v
2020
- xcodebuild -version
2121
- date
2222

23-
.install_carthage_dependencies: &install_carthage_dependencies
24-
- carthage update --use-xcframeworks --platform iOS
25-
2623
.download_google_info_plist: &download_google_info_plist
2724
- curl
2825
--fail
@@ -65,15 +62,15 @@ stages:
6562
--clean
6663

6764
.build_simulator_general_script: &build_simulator_general_script
68-
- xcodebuild -configuration Debug -scheme $scheme -sdk iphonesimulator -derivedDataPath ./BuildForSimulator -quiet
65+
- xcodebuild -configuration Alpha -scheme $scheme -sdk iphonesimulator -derivedDataPath ./BuildForSimulator -quiet
6966

7067
############## build ##############
7168

7269
.build_general_params: &build_general_params
7370
retry: 1
7471
stage: build
7572
tags:
76-
- xcode15
73+
- xcode16
7774
before_script:
7875
- *mac_general_scripts
7976
artifacts:
@@ -85,7 +82,6 @@ stages:
8582
build_develop_feature:
8683
<<: *build_general_params
8784
script:
88-
- *install_carthage_dependencies
8985
- *download_google_info_plist
9086
- *build_general_script
9187
only:
@@ -97,7 +93,6 @@ build_beta:
9793
<<: *build_general_params
9894
when: manual
9995
script:
100-
- *install_carthage_dependencies
10196
- *download_google_info_plist_beta
10297
- *build_general_script_beta
10398
only:
@@ -109,7 +104,6 @@ build_simulator:
109104
<<: *build_general_params
110105
when: manual
111106
script:
112-
- *install_carthage_dependencies
113107
- *download_google_info_plist
114108
- *build_simulator_general_script
115109
- zip -r ./${scheme}.zip ./BuildForSimulator/Build/Products/Debug-iphonesimulator/${scheme}.app

.swiftlint.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ disabled_rules:
3737
- type_name
3838
- void_function_in_ternary
3939
- switch_case_alignment
40+
- unavailable_condition
4041
excluded:
4142
- Carthage
4243
- Pods

AUTHORS

Lines changed: 0 additions & 2 deletions
This file was deleted.

AUTHORS.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<!--
2+
- SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors
3+
- SPDX-License-Identifier: GPL-3.0-or-later
4+
-->
5+
# Authors
6+
7+
- Marino Faggiana <[email protected]>
8+
- Henrik Storch <[email protected]>
9+
- Milen Pivchev <[email protected]>
10+
- Philippe Weidmann <[email protected]>
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>com.apple.security.application-groups</key>
6+
<array>
7+
<string>group.com.viseven.ionos.easystorage</string>
8+
</array>
9+
<key>keychain-access-groups</key>
10+
<array>
11+
<string>$(AppIdentifierPrefix)com.viseven.ionos.easystorage</string>
12+
</array>
13+
</dict>
14+
</plist>
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>CFBundleDevelopmentRegion</key>
6+
<string>en</string>
7+
<key>CFBundleDisplayName</key>
8+
<string>HiDrive Next</string>
9+
<key>CFBundleExecutable</key>
10+
<string>$(EXECUTABLE_NAME)</string>
11+
<key>CFBundleIdentifier</key>
12+
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
13+
<key>CFBundleInfoDictionaryVersion</key>
14+
<string>6.0</string>
15+
<key>CFBundleName</key>
16+
<string>$(PRODUCT_NAME)</string>
17+
<key>CFBundlePackageType</key>
18+
<string>XPC!</string>
19+
<key>CFBundleShortVersionString</key>
20+
<string>$(MARKETING_VERSION)</string>
21+
<key>CFBundleVersion</key>
22+
<string>$(CURRENT_PROJECT_VERSION)</string>
23+
<key>NSAppTransportSecurity</key>
24+
<dict>
25+
<key>NSAllowsArbitraryLoads</key>
26+
<true/>
27+
</dict>
28+
<key>NSExtension</key>
29+
<dict>
30+
<key>NSExtensionFileProviderDocumentGroup</key>
31+
<string>group.com.viseven.ionos.easystorage</string>
32+
<key>NSExtensionFileProviderSupportsEnumeration</key>
33+
<true/>
34+
<key>NSExtensionFileProviderSupportsPickingFolders</key>
35+
<true/>
36+
<key>NSExtensionPointIdentifier</key>
37+
<string>com.apple.fileprovider-nonui</string>
38+
<key>NSExtensionPrincipalClass</key>
39+
<string>$(PRODUCT_MODULE_NAME).FileProviderExtension</string>
40+
</dict>
41+
</dict>
42+
</plist>
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>com.apple.security.application-groups</key>
6+
<array>
7+
<string>group.com.viseven.ionos.easystorage</string>
8+
</array>
9+
<key>keychain-access-groups</key>
10+
<array>
11+
<string>$(AppIdentifierPrefix)com.viseven.ionos.easystorage</string>
12+
</array>
13+
</dict>
14+
</plist>
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>CFBundleDevelopmentRegion</key>
6+
<string>$(DEVELOPMENT_LANGUAGE)</string>
7+
<key>CFBundleDisplayName</key>
8+
<string>HiDrive Next</string>
9+
<key>CFBundleExecutable</key>
10+
<string>$(EXECUTABLE_NAME)</string>
11+
<key>CFBundleIdentifier</key>
12+
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
13+
<key>CFBundleInfoDictionaryVersion</key>
14+
<string>6.0</string>
15+
<key>CFBundleName</key>
16+
<string>$(PRODUCT_NAME)</string>
17+
<key>CFBundlePackageType</key>
18+
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
19+
<key>CFBundleShortVersionString</key>
20+
<string>$(MARKETING_VERSION)</string>
21+
<key>CFBundleVersion</key>
22+
<string>$(CURRENT_PROJECT_VERSION)</string>
23+
<key>NSExtension</key>
24+
<dict>
25+
<key>NSExtensionFileProviderActions</key>
26+
<array>
27+
<dict>
28+
<key>NSExtensionFileProviderActionActivationRule</key>
29+
<string>TRUEPREDICATE</string>
30+
<key>NSExtensionFileProviderActionIdentifier</key>
31+
<string>com.mycompany.FileProviderUI.CustomAction</string>
32+
<key>NSExtensionFileProviderActionName</key>
33+
<string>Custom Action</string>
34+
</dict>
35+
</array>
36+
<key>NSExtensionMainStoryboard</key>
37+
<string>MainInterface</string>
38+
<key>NSExtensionPointIdentifier</key>
39+
<string>com.apple.fileprovider-actionsui</string>
40+
</dict>
41+
<key>NSHumanReadableCopyright</key>
42+
<string></string>
43+
</dict>
44+
</plist>

0 commit comments

Comments
 (0)