Skip to content

Commit

Permalink
Merge pull request #1008 from tchapgouv/rebase/element-ios-1.11.9
Browse files Browse the repository at this point in the history
Rebase/element ios 1.11.9
  • Loading branch information
NicolasBuquet authored Apr 4, 2024
2 parents b153993 + ab53add commit 07b7f8d
Show file tree
Hide file tree
Showing 36 changed files with 1,057 additions and 373 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ci-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ env:
jobs:
build:
name: Build
runs-on: macos-12
runs-on: macos-14

# Concurrency group not needed as this workflow only runs on develop which we always want to test.

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ env:
jobs:
tests:
name: Tests
runs-on: macos-12
runs-on: macos-14

concurrency:
# When running on develop, use the sha to allow all runs of this workflow to run concurrently.
Expand Down
63 changes: 63 additions & 0 deletions .github/workflows/ci-ui-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: UI Tests CI

on:
pull_request:

workflow_dispatch:

env:
# Make the git branch for a PR available to our Fastfile
MX_GIT_BRANCH: ${{ github.event.pull_request.head.ref }}

jobs:
tests:
name: UI Tests
runs-on: macos-14

concurrency:
# Only allow a single run of this workflow on each branch, automatically cancelling older runs.
group: ui-tests-${{ github.head_ref }}
cancel-in-progress: true

steps:
- uses: actions/checkout@v2

# Common cache
# Note: GH actions do not support yaml anchor yet. We need to duplicate this for every job
- uses: actions/cache@v2
with:
path: Pods
key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }}
restore-keys: |
${{ runner.os }}-pods-
- uses: actions/cache@v2
with:
path: vendor/bundle
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
restore-keys: |
${{ runner.os }}-gems-
# Make sure we use the latest version of MatrixSDK
- name: Reset MatrixSDK pod
run: rm -rf Pods/MatrixSDK

# Common setup
# Note: GH actions do not support yaml anchor yet. We need to duplicate this for every job
- name: Brew bundle
run: brew bundle
- name: Bundle install
run: |
bundle config path vendor/bundle
bundle install --jobs 4 --retry 3
- name: Use right MatrixSDK versions
run: bundle exec fastlane point_dependencies_to_related_branches

# Main step
- name: UI tests
run: bundle exec fastlane uitest

- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
with:
flags: uitests

95 changes: 95 additions & 0 deletions .github/workflows/release-alpha.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
name: Build alpha release

on:

# Triggers the workflow on any pull request
pull_request:
types: [ labeled, synchronize, opened, reopened ]

env:
# Make the git branch for a PR available to our Fastfile
MX_GIT_BRANCH: ${{ github.event.pull_request.head.ref }}

jobs:
build:
# Only run for PRs that contain the trigger label. The action will fail for forks due to
# missing secrets, but there's no need to handle this as it won't run automatically.
if: contains(github.event.pull_request.labels.*.name, 'Trigger-PR-Build')

name: Release
runs-on: macos-14

concurrency:
# Only allow a single run of this workflow on each branch, automatically cancelling older runs.
group: alpha-${{ github.head_ref }}
cancel-in-progress: true

steps:
- uses: actions/checkout@v2

# Common cache
# Note: GH actions do not support yaml anchor yet. We need to duplicate this for every job
- name: Cache CocoaPods libraries
uses: actions/cache@v2
with:
path: Pods
key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }}
restore-keys: |
${{ runner.os }}-pods-
- name: Cache Ruby gems
uses: actions/cache@v2
with:
path: vendor/bundle
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
restore-keys: |
${{ runner.os }}-gems-
# Make sure we use the latest version of MatrixSDK
- name: Reset MatrixSDK pod
run: rm -rf Pods/MatrixSDK

# Common setup
# Note: GH actions do not support yaml anchor yet. We need to duplicate this for every job
- name: Brew bundle
run: brew bundle
- name: Bundle install
run: |
bundle config path vendor/bundle
bundle install --jobs 4 --retry 3
- name: Use right MatrixSDK versions
run: bundle exec fastlane point_dependencies_to_related_branches

# Import alpha release private signing certificate
- name: Import signing certificate
uses: apple-actions/import-codesign-certs@v1
with:
p12-file-base64: ${{ secrets.ALPHA_CERTIFICATES_P12 }}
p12-password: ${{ secrets.ALPHA_CERTIFICATES_P12_PASSWORD }}

# Main step
# The Ad-hoc release link will be referenced as 'DIAWI_FILE_LINK'
# and QR link as 'DIAWI_QR_CODE_LINK' when the Diawi upload succeed
- name: Build Ad-hoc release and send it to Diawi
run: bundle exec fastlane alpha
env:
APPSTORECONNECT_KEY_ID: ${{ secrets.APPSTORECONNECT_KEY_ID }}
APPSTORECONNECT_KEY_ISSUER_ID: ${{ secrets.APPSTORECONNECT_KEY_ISSUER_ID }}
APPSTORECONNECT_KEY_CONTENT: ${{ secrets.APPSTORECONNECT_KEY_CONTENT }}
DIAWI_API_TOKEN: ${{ secrets.DIAWI_API_TOKEN }}
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}

- name: Add or update PR comment with Ad-hoc release informations
uses: NejcZdovc/comment-pr@v1
with:
message: |
:iphone: Scan the QR code below to install the build for this PR.
:lock: This build is for internal testing purpose. Only devices listed in the ad-hoc provisioning profile can install Element Alpha.
![QR code](${{ env.DIAWI_QR_CODE_LINK }})
If you can't scan the QR code you can install the build via this link: ${{ env.DIAWI_FILE_LINK }}
# Enables to identify and update existing Ad-hoc release message on new commit in the PR
identifier: "GITHUB_COMMENT_ADHOC_RELEASE"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
31 changes: 31 additions & 0 deletions .github/workflows/sonarcloud.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: SonarCloud analysis

on:
push:
branches: [ "develop" ]
pull_request:
branches: [ "develop" ]
workflow_dispatch:

permissions:
pull-requests: read # allows SonarCloud to decorate PRs with analysis results

jobs:
Analysis:
runs-on: ubuntu-latest

steps:
- name: Analyze with SonarCloud

# You can pin the exact commit or the version.
uses: SonarSource/sonarcloud-github-action@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} # Generate the token on Sonarcloud.io, add it to the secrets of this repo
with:
# Additional arguments for the sonarcloud scanner
args:
-Dsonar.projectKey=vector-im_element-ios
-Dsonar.organization=new_vector_ltd_organization
-Dsonar.inclusions=RiotSwiftUI/**
# For more info about the parameters, please refer to https://docs.sonarcloud.io/advanced-setup/analysis-parameters/
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,4 @@
</dict>
</array>
</dict>
</plist>
</plist>
2 changes: 2 additions & 0 deletions Btchap/Generated/InfoPlist.swift
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ internal enum InfoPlist {
internal static let nsCameraUsageDescription: String = _document["NSCameraUsageDescription"]
internal static let nsContactsUsageDescription: String = _document["NSContactsUsageDescription"]
internal static let nsFaceIDUsageDescription: String = _document["NSFaceIDUsageDescription"]
internal static let nsLocationAlwaysAndWhenInUseUsageDescription: String = _document["NSLocationAlwaysAndWhenInUseUsageDescription"]
internal static let nsLocationWhenInUseUsageDescription: String = _document["NSLocationWhenInUseUsageDescription"]
internal static let nsMicrophoneUsageDescription: String = _document["NSMicrophoneUsageDescription"]
internal static let nsPhotoLibraryUsageDescription: String = _document["NSPhotoLibraryUsageDescription"]
internal static let uiBackgroundModes: [String] = _document["UIBackgroundModes"]
Expand Down
9 changes: 9 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,12 @@
## Changes in 1.11.9 (2024-04-02)

Others

- Update matrix-analytics-events to version 0.15.0 ([#7768](https://github.com/element-hq/element-ios/pull/7768))
- Upgrade to build with Xcode 15.2
- Add a privacy manifest


## Changes in 1.11.8 (2024-03-05)

🙌 Improvements
Expand Down
2 changes: 2 additions & 0 deletions DevTchap/Generated/InfoPlist.swift
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ internal enum InfoPlist {
internal static let nsCameraUsageDescription: String = _document["NSCameraUsageDescription"]
internal static let nsContactsUsageDescription: String = _document["NSContactsUsageDescription"]
internal static let nsFaceIDUsageDescription: String = _document["NSFaceIDUsageDescription"]
internal static let nsLocationAlwaysAndWhenInUseUsageDescription: String = _document["NSLocationAlwaysAndWhenInUseUsageDescription"]
internal static let nsLocationWhenInUseUsageDescription: String = _document["NSLocationWhenInUseUsageDescription"]
internal static let nsMicrophoneUsageDescription: String = _document["NSMicrophoneUsageDescription"]
internal static let nsPhotoLibraryUsageDescription: String = _document["NSPhotoLibraryUsageDescription"]
internal static let uiBackgroundModes: [String] = _document["UIBackgroundModes"]
Expand Down
Loading

0 comments on commit 07b7f8d

Please sign in to comment.