Skip to content

Commit

Permalink
Merge branch 'release/1.9.8/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
pixlwave committed Oct 4, 2022
2 parents 431e48d + 47cb658 commit 7f48870
Show file tree
Hide file tree
Showing 726 changed files with 6,504 additions and 3,819 deletions.
15 changes: 15 additions & 0 deletions .swiftformat
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
--swiftversion 5.6

--exclude build, CommonKit, Config, DesignKit, fastlane, Pods, Riot, RiotNSE, RiotShareExtension, RiotTests, SiriIntents, Tools, Variants, vendor

--disable wrapMultiLineStatementBraces
--disable hoistPatternLet

--commas inline
--ifdef no-indent
--nospaceoperators ...,..<
--stripunusedargs closure-only
--trimwhitespace nonblank-lines
--wrapparameters after-first
--redundanttype inferred
--emptybraces spaced
35 changes: 35 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,38 @@
## Changes in 1.9.8 (2022-10-04)

🙌 Improvements

- UserSessions: Extended device information (PSG-772). ([#6766](https://github.com/vector-im/element-ios/pull/6766))
- Settings: Add labs flags for new session manager (PSG-792, PSG-799). ([#6780](https://github.com/vector-im/element-ios/pull/6780))
- User session details: Include browser version for web sessions (PSG-761). ([#6788](https://github.com/vector-im/element-ios/pull/6788))
- Upgrade MatrixSDK version ([v0.24.0](https://github.com/matrix-org/matrix-ios-sdk/releases/tag/v0.24.0)).
- Include concrete device model in user agent (PSG-754) ([#6742](https://github.com/vector-im/element-ios/issues/6742))
- CryptoV2: Manual device verification ([#6781](https://github.com/vector-im/element-ios/issues/6781))
- User sessions: Add support for MSC3881 ([#6787](https://github.com/vector-im/element-ios/issues/6787))

🐛 Bugfixes

- Voiceover: Add labels to User Menu and My Spaces buttons on the All Chats view. ([#6580](https://github.com/vector-im/element-ios/issues/6580))
- Media: Avoid redundant reloads on media viewer. ([#6717](https://github.com/vector-im/element-ios/issues/6717))
- Pass country code into MSISDN requests ([#6723](https://github.com/vector-im/element-ios/issues/6723))
- Fix render of links with both characters requiring percent encoding and markdown-like syntax ([#6748](https://github.com/vector-im/element-ios/issues/6748))
- Fix crash when scrolling chat list ([#6749](https://github.com/vector-im/element-ios/issues/6749))
- App Layout: Unable to send message after filtering for room ([#6755](https://github.com/vector-im/element-ios/issues/6755))
- App Layout: Fix missing toolbar for users with no rooms. ([#6796](https://github.com/vector-im/element-ios/pull/6796))
- Fix code block background colour ([#6778](https://github.com/vector-im/element-ios/issues/6778))
- Fix navigation bars visibility on iOS 16. ([#6799](https://github.com/vector-im/element-ios/pull/6799))

🧱 Build

- Fix crash when scrolling chat list ([#6757](https://github.com/vector-im/element-ios/pull/6757))

🚧 In development 🚧

- Device manager: User session details screen. ([#6693](https://github.com/vector-im/element-ios/issues/6693))
- Device manager: Session overview screen. ([#6753](https://github.com/vector-im/element-ios/issues/6753))
- Device Manager: Link current session to session overview. ([#6770](https://github.com/vector-im/element-ios/issues/6770))


## Changes in 1.9.7 (2022-09-28)

🙌 Improvements
Expand Down
4 changes: 2 additions & 2 deletions Config/AppVersion.xcconfig
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@
//

// Version
MARKETING_VERSION = 1.9.7
CURRENT_PROJECT_VERSION = 1.9.7
MARKETING_VERSION = 1.9.8
CURRENT_PROJECT_VERSION = 1.9.8
4 changes: 0 additions & 4 deletions Config/BuildSettings.swift
Original file line number Diff line number Diff line change
Expand Up @@ -420,8 +420,4 @@ final class BuildSettings: NSObject {

// MARK: - New App Layout
static let newAppLayoutEnabled = true

// MARK: - Device manager

static let deviceManagerEnabled = false
}
66 changes: 65 additions & 1 deletion Config/CommonConfiguration.swift
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@
import Foundation
import MatrixSDK

#if !os(OSX)
import DeviceKit
#endif

/// CommonConfiguration is the central point to setup settings for MatrixSDK, MatrixKit and common configurations for all targets.
class CommonConfiguration: NSObject, Configurable {

Expand Down Expand Up @@ -66,8 +70,13 @@ class CommonConfiguration: NSObject, Configurable {
// Disable identicon use
sdkOptions.disableIdenticonUseForUserAvatar = true

// Set up user agent
if let userAgent = makeASCIIUserAgent() {
sdkOptions.httpAdditionalHeaders = ["User-Agent": userAgent]
}

// Pass httpAdditionalHeaders to the SDK
sdkOptions.httpAdditionalHeaders = BuildSettings.httpAdditionalHeaders
sdkOptions.httpAdditionalHeaders = (sdkOptions.httpAdditionalHeaders ?? [:]).merging(BuildSettings.httpAdditionalHeaders, uniquingKeysWith: { _, value in value })

// Disable key backup on common
sdkOptions.enableKeyBackupWhenStartingMXCrypto = false
Expand All @@ -80,6 +89,61 @@ class CommonConfiguration: NSObject, Configurable {
sdkOptions.authEnableRefreshTokens = BuildSettings.authEnableRefreshTokens
// Configure key provider delegate
MXKeyProvider.sharedInstance().delegate = EncryptionKeyManager.shared

sdkOptions.enableNewClientInformationFeature = RiotSettings.shared.enableClientInformationFeature
}

private func makeASCIIUserAgent() -> String? {
guard var userAgent = makeUserAgent() else {
return nil
}
if !userAgent.canBeConverted(to: .ascii) {
let mutableUserAgent = NSMutableString(string: userAgent)
if CFStringTransform(mutableUserAgent, nil, "Any-Latin; Latin-ASCII; [:^ASCII:] Remove" as CFString, false) {
userAgent = mutableUserAgent as String
}
}
return userAgent
}

private func makeUserAgent() -> String? {
let appInfo = AppInfo.current
let clientName = appInfo.displayName
let clientVersion = appInfo.appVersion?.bundleShortVersion ?? "unknown"

#if os(iOS)
return String(
format: "%@/%@ (%@; iOS %@; Scale/%0.2f)",
clientName,
clientVersion,
Device.current.safeDescription,
UIDevice.current.systemVersion,
UIScreen.main.scale)
#elseif os(tvOS)
return String(
format: "%@/%@ (%@; tvOS %@; Scale/%0.2f)",
clientName,
clientVersion,
Device.current.safeDescription,
UIDevice.current.systemVersion,
UIScreen.main.scale)
#elseif os(watchOS)
return String(
format: "%@/%@ (%@; watchOS %@; Scale/%0.2f)",
clientName,
clientVersion,
Device.current.safeDescription,
WKInterfaceDevice.current.systemVersion,
WKInterfaceDevice.currentDevice.screenScale)
#elseif os(OSX)
return String(
format: "%@/%@ (Mac; Mac OS X %@)",
clientName,
clientVersion,
NSProcessInfo.processInfo.operatingSystemVersionString)
#else
return nil
#endif
}


Expand Down
2 changes: 1 addition & 1 deletion Podfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ use_frameworks!
# - `{ :specHash => {sdk spec hash}` to depend on specific pod options (:git => …, :podspec => …) for MatrixSDK repo. Used by Fastfile during CI
#
# Warning: our internal tooling depends on the name of this variable name, so be sure not to change it
$matrixSDKVersion = '= 0.23.19'
$matrixSDKVersion = '= 0.24.0'
# $matrixSDKVersion = :local
# $matrixSDKVersion = { :branch => 'develop'}
# $matrixSDKVersion = { :specHash => { git: 'https://git.io/fork123', branch: 'fix' } }
Expand Down
18 changes: 9 additions & 9 deletions Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -56,19 +56,19 @@ PODS:
- LoggerAPI (1.9.200):
- Logging (~> 1.1)
- Logging (1.4.0)
- MatrixSDK (0.23.19):
- MatrixSDK/Core (= 0.23.19)
- MatrixSDK/Core (0.23.19):
- MatrixSDK (0.24.0):
- MatrixSDK/Core (= 0.24.0)
- MatrixSDK/Core (0.24.0):
- AFNetworking (~> 4.0.0)
- GZIP (~> 1.3.0)
- libbase58 (~> 0.1.4)
- MatrixSDK/CryptoSDK
- OLMKit (~> 3.2.5)
- Realm (= 10.27.0)
- SwiftyBeaver (= 1.9.5)
- MatrixSDK/CryptoSDK (0.23.19):
- MatrixSDK/CryptoSDK (0.24.0):
- MatrixSDKCrypto (= 0.1.0)
- MatrixSDK/JingleCallStack (0.23.19):
- MatrixSDK/JingleCallStack (0.24.0):
- JitsiMeetSDK (= 5.0.2)
- MatrixSDK/Core
- MatrixSDKCrypto (0.1.0)
Expand Down Expand Up @@ -123,8 +123,8 @@ DEPENDENCIES:
- KeychainAccess (~> 4.2.2)
- KTCenterFlowLayout (~> 1.3.1)
- libPhoneNumber-iOS (~> 0.9.13)
- MatrixSDK (= 0.23.19)
- MatrixSDK/JingleCallStack (= 0.23.19)
- MatrixSDK (= 0.24.0)
- MatrixSDK/JingleCallStack (= 0.24.0)
- OLMKit
- PostHog (~> 1.4.4)
- ReadMoreTextView (~> 3.0.1)
Expand Down Expand Up @@ -221,7 +221,7 @@ SPEC CHECKSUMS:
libPhoneNumber-iOS: 0a32a9525cf8744fe02c5206eb30d571e38f7d75
LoggerAPI: ad9c4a6f1e32f518fdb43a1347ac14d765ab5e3d
Logging: beeb016c9c80cf77042d62e83495816847ef108b
MatrixSDK: a60a00635006c539dce654253e8f0544ea996111
MatrixSDK: 196ae670143c5169ca9d02ff4d4a87f1e4dd8f08
MatrixSDKCrypto: 4b9146d5ef484550341be056a164c6930038028e
OLMKit: da115f16582e47626616874e20f7bb92222c7a51
PostHog: 4b6321b521569092d4ef3a02238d9435dbaeb99f
Expand All @@ -241,6 +241,6 @@ SPEC CHECKSUMS:
zxcvbn-ios: fef98b7c80f1512ff0eec47ac1fa399fc00f7e3c
ZXingObjC: fdbb269f25dd2032da343e06f10224d62f537bdb

PODFILE CHECKSUM: 400334cf1580361b831a632dcc025f2029e56b6e
PODFILE CHECKSUM: f8957c6eb2617c1f8a9174c1c5eac5f2bd67a599

COCOAPODS: 1.11.2
12 changes: 11 additions & 1 deletion Riot.xcodeproj/xcshareddata/xcschemes/Riot.xcscheme
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES"
disableMainThreadChecker = "YES"
onlyGenerateCoverageForSpecifiedTargets = "NO">
codeCoverageEnabled = "YES"
onlyGenerateCoverageForSpecifiedTargets = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
Expand All @@ -53,6 +54,15 @@
</Testables>
<CommandLineArguments>
</CommandLineArguments>
<CodeCoverageTargets>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "57B13CC4586E9D43ED24DE1E"
BuildableName = "Riot.app"
BlueprintName = "Riot"
ReferencedContainer = "container:Riot.xcodeproj">
</BuildableReference>
</CodeCoverageTargets>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
Expand Down
9 changes: 9 additions & 0 deletions Riot.xcworkspace/xcshareddata/swiftpm/Package.resolved
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
{
"pins" : [
{
"identity" : "devicekit",
"kind" : "remoteSourceControl",
"location" : "https://github.com/devicekit/DeviceKit",
"state" : {
"revision" : "20e0991f3975916ab0f6d58db84d8bc64f883537",
"version" : "4.7.0"
}
},
{
"identity" : "maplibre-gl-native-distribution",
"kind" : "remoteSourceControl",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "user_sessions_inactive.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "user_sessions_unverified.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 7f48870

Please sign in to comment.