Skip to content

Commit

Permalink
Merge branch 'release/nodefy_0.23.15' into release/release_0_23_15
Browse files Browse the repository at this point in the history
* release/nodefy_0.23.15: (175 commits)
  finish version++
  version++
  Stop using the room ID from the space child state.
  finish version++
  version++
  MXBeaconAggregations: Add debug log when MXBeaconInfoSummary associated to a stopped beacon info is not found.
  Implement new space selector bottom sheet (matrix-org#1541)
  Rooms without an unread badge show up in "unread" tab (matrix-org#1540)
  Delight edit layout experiment (matrix-org#1515)
  Send an empty dictionary when calling /join to be spec compliant.
  Empty commit to wake codecov
  AllWorkingTests: Disable tests that do not pass on GH actions
  changelog
  AllWorkingTests: Disabled commented tests
  Crypto tests CI: Expose tests report on failure and share code coverage
  Tests: Run working integration tests on every PR
  AllWorkingTests: Disable all unit tests
  AllWorkingTests: Disable the 22 tests that fail
  AllWorkingTests: Disable test classes with tests that crash
  Tests: Create AllWorkingTests test plan with stable tests
  ...

# Conflicts:
#	MatrixSDK/Data/RoomSummaryStore/CoreData/Models/MXRoomSummaryMO.swift
  • Loading branch information
13027776717 committed Aug 29, 2022
2 parents e61d10a + a68cb3e commit 102acf0
Show file tree
Hide file tree
Showing 176 changed files with 4,667 additions and 659 deletions.
86 changes: 86 additions & 0 deletions .github/workflows/ci-crypto-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
name: Crypto Tests CI

on:
# Triggers the workflow on any pull request and push to develop
push:
branches: [ develop ]
pull_request:

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

jobs:
crypto-tests:
name: Crypto Tests with Synapse
runs-on: macos-11

concurrency:
# When running on develop, use the sha to allow all runs of this workflow to run concurrently.
# Otherwise only allow a single run of this workflow on each branch, automatically cancelling older runs.
group: ${{ github.ref == 'refs/heads/develop' && format('crypto-develop-{0}', github.sha) || format('crypto-{0}', github.ref) }}
cancel-in-progress: true

steps:
- uses: actions/checkout@v2

# Cache for python env for Synapse
- name: Set up Python 3.8
uses: actions/setup-python@v2
with:
python-version: 3.8
- name: Cache pip
uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip
restore-keys: |
${{ runner.os }}-pip-
${{ runner.os }}-
# Cache for Xcode env
- 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-
- name: Start synapse server
uses: michaelkaye/[email protected]
with:
uploadLogs: true
httpPort: 8080
disableRateLimiting: true

- name: Bundle install
run: |
bundle config path vendor/bundle
bundle install --jobs 4 --retry 3
# Main step
- name: Crypto tests
run: bundle exec fastlane test testplan:CryptoTests

# Store artifacts
- uses: actions/upload-artifact@v2
if: always()
with:
name: report.html
path: build/test/report.html
- uses: actions/upload-artifact@v2
if: always()
with:
name: report.junit
path: build/test/report.junit
- uses: actions/upload-artifact@v2
if: always()
with:
name: MatrixSDK-macOS.xcresult
path: build/test/MatrixSDK-macOS.xcresult/

# Upload coverage
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
91 changes: 91 additions & 0 deletions .github/workflows/ci-integration-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
name: Integration Tests CI

on:
# Triggers the workflow on any pull request and push to develop
push:
branches: [ develop ]
pull_request:

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

jobs:
integration-tests:
name: Integration Tests
runs-on: macos-11

concurrency:
# When running on develop, use the sha to allow all runs of this workflow to run concurrently.
# Otherwise only allow a single run of this workflow on each branch, automatically cancelling older runs.
group: ${{ github.ref == 'refs/heads/develop' && format('tests-integration-develop-{0}', github.sha) || format('tests-integration-{0}', github.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-
# Cache for python env for Synapse
- name: Set up Python 3.8
uses: actions/setup-python@v2
with:
python-version: 3.8
- name: Cache pip
uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip
restore-keys: |
${{ runner.os }}-pip-
${{ runner.os }}-
# Set up a Synapse server
- name: Start synapse server
uses: michaelkaye/[email protected]
with:
uploadLogs: true
httpPort: 8080
disableRateLimiting: true

# Common setup
# Note: GH actions do not support yaml anchor yet. We need to duplicate this for every job
- name: Bundle install
run: |
bundle config path vendor/bundle
bundle install --jobs 4 --retry 3
# Main step
- name: Integration tests
run: bundle exec fastlane test testplan:AllWorkingTests

# Store artifacts
- uses: actions/upload-artifact@v2
if: always()
with:
name: report.html
path: build/test/report.html
- uses: actions/upload-artifact@v2
if: always()
with:
name: report.junit
path: build/test/report.junit
- uses: actions/upload-artifact@v2
if: always()
with:
name: MatrixSDK-macOS.xcresult
path: build/test/MatrixSDK-macOS.xcresult/

# Upload coverage
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
7 changes: 7 additions & 0 deletions .github/workflows/ci-lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,13 @@ jobs:
lint:
name: pod lib lint
runs-on: macos-11

concurrency:
# When running on develop, use the sha to allow all runs of this workflow to run concurrently.
# Otherwise only allow a single run of this workflow on each branch, automatically cancelling older runs.
group: ${{ github.ref == 'refs/heads/develop' && format('lint-develop-{0}', github.sha) || format('lint-{0}', github.ref) }}
cancel-in-progress: true

steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v2
Expand Down
9 changes: 9 additions & 0 deletions .github/workflows/ci-unit-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,12 @@ jobs:
name: Unit Tests
runs-on: macos-11

concurrency:
# When running on develop, use the sha to allow all runs of this workflow to run concurrently.
# Otherwise only allow a single run of this workflow on each branch, automatically cancelling older runs.
group: ${{ github.ref == 'refs/heads/develop' && format('tests-develop-{0}', github.sha) || format('tests-{0}', github.ref) }}
cancel-in-progress: true

steps:
- uses: actions/checkout@v2

Expand Down Expand Up @@ -56,3 +62,6 @@ jobs:
with:
name: MatrixSDK-macOS.xcresult
path: build/test/MatrixSDK-macOS.xcresult/

- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
4 changes: 2 additions & 2 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
name: Nightly checks

on:
schedule:
- cron: '0 3 * * 1-5'
# schedule:
# - cron: '0 3 * * 1-5'

workflow_dispatch:

Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ DerivedData
*.ipa
*.xcuserstate
*.DS_Store
.vscode/
vendor/

# CocoaPods
#
Expand Down
131 changes: 131 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,134 @@
## Changes in 0.23.15 (2022-08-10)

🐛 Bugfixes

- MXSpaceService: Fix a crash on Synapse 1.65 following changes to the /hierarchy API. ([#6547](https://github.com/vector-im/element-ios/issues/6547))


## Changes in 0.23.14 (2022-08-09)

🙌 Improvements

- CI: Enable integration tests on GitHub actions ([#1537](https://github.com/matrix-org/matrix-ios-sdk/pull/1537))
- App Layout: Added breadcrumbs data fetcher and updated room summary data type to reflect new needs ([#6407](https://github.com/vector-im/element-ios/issues/6407))
- App Layout: added MXSpace.minimumPowerLevelForAddingRoom() and MXSpaceService.rootSpaces ([#6410](https://github.com/vector-im/element-ios/issues/6410))

🐛 Bugfixes

- MXRestClient: Send an empty dictionary when calling /join to be spec compliant. ([#6481](https://github.com/vector-im/element-ios/issues/6481))
- App Layout: exclude room summaries without notifications from unread list ([#6511](https://github.com/vector-im/element-ios/issues/6511))


## Changes in 0.23.13 (2022-07-26)

🙌 Improvements

- MXRoom: Support reply to beacon info event. ([#6423](https://github.com/vector-im/element-ios/issues/6423))
- MXBeaconAggregations: Handle beacon info redaction. ([#6470](https://github.com/vector-im/element-ios/issues/6470))

🐛 Bugfixes

- Fix formatted_body content for unformatted events ([#6446](https://github.com/vector-im/element-ios/issues/6446))

🧱 Build

- Disable nightly tests for now as they're always timing out. ([#1523](https://github.com/matrix-org/matrix-ios-sdk/pull/1523))

Others

- Reduce project warnings ([#1527](https://github.com/matrix-org/matrix-ios-sdk/pull/1527))
- Crypto: Convert verification request and transaction to protocols ([#1528](https://github.com/matrix-org/matrix-ios-sdk/pull/1528))


## Changes in 0.23.12 (2022-07-13)

🐛 Bugfixes

- Fix JingleCallStack UI threading crashes ([#6415](https://github.com/vector-im/element-ios/issues/6415))


## Changes in 0.23.11 (2022-07-12)

✨ Features

- Analytics: Track non-fatal issues if consent provided ([#1503](https://github.com/matrix-org/matrix-ios-sdk/pull/1503))
- Crypto: Integrate Rust-based OlmMachine to encrypt / decrypt messages ([#6357](https://github.com/vector-im/element-ios/issues/6357))

🙌 Improvements

- Include ID server access token when making a 3pid invite (and creating a room). ([#6385](https://github.com/vector-im/element-ios/issues/6385))

🐛 Bugfixes

- MXiOSAudioOutputRouter: fixed issue that prevents the system to properly switch from built-in to bluetooth output. ([#5368](https://github.com/vector-im/element-ios/issues/5368))
- Fix MXCall answer not being sent to server in some cases ([#6359](https://github.com/vector-im/element-ios/issues/6359))

Others

- Integration tests should wait until the room is ready ([#1516](https://github.com/matrix-org/matrix-ios-sdk/pull/1516))
- Analytics: Log errors with details in analytics ([#1517](https://github.com/matrix-org/matrix-ios-sdk/pull/1517))
- Secret Storage: Detect multiple valid SSSS keys ([#4569](https://github.com/vector-im/element-ios/issues/4569))


## Changes in 0.23.10 (2022-06-28)

✨ Features

- Add missing "user_busy" MXCallHangupEvent ([#1342](https://github.com/vector-im/element-ios/issues/1342))

🐛 Bugfixes

- Handle empty pagination end token on timeline end reached ([#6347](https://github.com/vector-im/element-ios/issues/6347))

⚠️ API Changes

- Drop support for iOS 10 and 32-bit architectures ([#1501](https://github.com/matrix-org/matrix-ios-sdk/pull/1501))

🧱 Build

- CI: Add concurrency to GitHub Actions. ([#5039](https://github.com/vector-im/element-ios/issues/5039))
- Add Codecov for unit tests coverage. ([#6306](https://github.com/vector-im/element-ios/issues/6306))

Others

- Crypto: Subclass MXCrypto to enable work-in-progress Rust sdk ([#1496](https://github.com/matrix-org/matrix-ios-sdk/pull/1496))
- MXBackgroundSyncService - Expose separate method for fetching a particular room's read marker event without causing extra syncs. ([#1500](https://github.com/matrix-org/matrix-ios-sdk/pull/1500))
- Crypto: Integrate new Rust-based MatrixSDKCrypto framework for DEBUG builds ([#1501](https://github.com/matrix-org/matrix-ios-sdk/pull/1501))


## Changes in 0.23.9 (2022-06-14)

🐛 Bugfixes

- Fix a crash on start if the user has a very large number of unread events in a room ([#1490](https://github.com/matrix-org/matrix-ios-sdk/pull/1490))
- Prevent invalid room names on member count underflows. ([#6227](https://github.com/vector-im/element-ios/issues/6227))
- Location sharing: Fix geo URI parsing with altitude component. ([#6247](https://github.com/vector-im/element-ios/issues/6247))

⚠️ API Changes

- MXRestClient: Add `logoutDevices` parameter to `changePassword` method. ([#6175](https://github.com/vector-im/element-ios/issues/6175))
- Mark MXRestClient init as `required` for mocking. ([#6179](https://github.com/vector-im/element-ios/issues/6179))


## Changes in 0.23.8 (2022-06-03)

🐛 Bugfixes

- Room state: Reload room state if detected empty on disk ([#1483](https://github.com/matrix-org/matrix-ios-sdk/pull/1483))
- Remove unwanted parts from replies new_content body/formatted_body ([#3517](https://github.com/vector-im/element-ios/issues/3517))
- MXBackgroundStore: Avoid clearing file store if event stream token is missing. ([#5924](https://github.com/vector-im/element-ios/issues/5924))
- MXRestClient: limit the query length to 2048 for joinRoom ([#6224](https://github.com/vector-im/element-ios/issues/6224))
- Bump realm to 10.27.0 to fix crypto performance issue. ([#6239](https://github.com/vector-im/element-ios/issues/6239))

🚧 In development 🚧

- Location sharing: Authorize only one live beacon info per member and per room. ([#6100](https://github.com/vector-im/element-ios/issues/6100))

Others

- Crypto: Add more logs when encrypting messages ([#1476](https://github.com/matrix-org/matrix-ios-sdk/pull/1476))


## Changes in 0.23.7 (2022-05-31)

🐛 Bugfixes
Expand Down
1 change: 1 addition & 0 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@ source "https://rubygems.org"
gem "fastlane"
gem "cocoapods", '~>1.11.2'
gem "xcode-install"
gem "slather"
Loading

0 comments on commit 102acf0

Please sign in to comment.