Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
103 commits
Select commit Hold shift + click to select a range
65e4d7f
Renamed SessionSnodeKit to SessionNetworkingKit
mpretty-cyro Aug 7, 2025
badb738
Fixed some missing renames
mpretty-cyro Aug 7, 2025
a758139
Fixed a couple of build issues
mpretty-cyro Aug 7, 2025
2d8675f
Moved all migrations into one target, simplified migration logic
mpretty-cyro Aug 8, 2025
0e1fb9a
Fix issue on some device long delete message is not wrapping
mikoldin123 Aug 27, 2025
06015d8
Fix input field not hiding when showing link preview modal
mikoldin123 Aug 27, 2025
b8023b6
Update message request delete action
mikoldin123 Sep 2, 2025
a953e20
Removed "Delete for Everyone" option when deleting pending messages
mpretty-cyro Sep 3, 2025
3f3d8e8
Added failed state as well
mpretty-cyro Sep 3, 2025
6a5bb22
Fix overly large file placeholder preview
mikoldin123 Sep 3, 2025
684a30b
Updated block contacts settings button design to be consistent
mikoldin123 Sep 4, 2025
0f5f091
Fix primary colour reset, main actor specifications
mpretty-cyro Sep 4, 2025
5e57af9
Fix trailing accessory views large padding
mikoldin123 Sep 4, 2025
9a6904f
Tweaks to try to improve CI output
mpretty-cyro Sep 4, 2025
27d6918
Another CI config tweak attempt
mpretty-cyro Sep 4, 2025
bace35a
Align dark mode toggle setting design with other platforms
mikoldin123 Sep 4, 2025
e1af97d
Further tweaks
mpretty-cyro Sep 4, 2025
f09e8a0
More tweaks
mpretty-cyro Sep 4, 2025
1d2e00b
Script name error
mpretty-cyro Sep 4, 2025
9369d22
Another CI tweak
mpretty-cyro Sep 4, 2025
c7d253f
Try to output error summary to avoid having to read log
mpretty-cyro Sep 4, 2025
ab52746
Aligned deleted message bubble's font and text color
mikoldin123 Sep 4, 2025
547595a
Log output tweaks
mpretty-cyro Sep 4, 2025
6777740
Fix build error
mpretty-cyro Sep 4, 2025
addad4c
More tweaks
mpretty-cyro Sep 4, 2025
bc13d9d
Verify test results
mpretty-cyro Sep 4, 2025
b08d759
Further tweaks
mpretty-cyro Sep 4, 2025
2fb0173
Another tweak
mpretty-cyro Sep 4, 2025
ab0ce7a
A few more tweaks to better indicate failures
mpretty-cyro Sep 4, 2025
5deb0be
Updated paddings and font sizes
mikoldin123 Sep 5, 2025
e6bda95
Refactor accessory view alignment handling
mikoldin123 Sep 5, 2025
fb13dee
Clean up code
mikoldin123 Sep 7, 2025
b8c4196
[Automated] Update translations from Crowdin
mpretty-cyro Sep 8, 2025
5109ec0
Updated font for call cells
mikoldin123 Sep 8, 2025
89832ab
Remove extra 4pt vertical padding on call cell
mikoldin123 Sep 8, 2025
aff16e9
Fix failing test due to `unexpected ',' separator`
mikoldin123 Sep 9, 2025
84ed827
Fixed a layout issue, removed unused code
mpretty-cyro Sep 9, 2025
145ad5b
Added the logic to `createHighlightingBackgroundLabelAndRadioView`
mpretty-cyro Sep 9, 2025
16db95c
Fixed breaking SessionHeaderView and Separator constraints
mpretty-cyro Sep 9, 2025
d19cd42
Fix edit image via add text not working
mikoldin123 Sep 10, 2025
1466b87
Added accessibility identifier for block contact cell
mikoldin123 Sep 10, 2025
d8d97e0
Fix padding icon padding in deleted message cell
mikoldin123 Sep 11, 2025
94baa24
Fix keyboard not presenting keyboard on longpress reply
mikoldin123 Sep 11, 2025
aa1280e
Fix previously selected app icon not re-selected on toggle default off
mikoldin123 Sep 12, 2025
ae10a42
Fix keyboard not showing when replying from message info
mikoldin123 Sep 12, 2025
ccf42d6
Merge pull request #554 from session-foundation/feature/update-crowdi…
mpretty-cyro Sep 15, 2025
e0bcf03
Code clean ups
mikoldin123 Sep 15, 2025
c90b57d
[Automated] Update translations from Crowdin
mpretty-cyro Sep 15, 2025
a64c7b7
Merge remote-tracking branch 'upstream/dev' into feature/rname-snode-kit
mpretty-cyro Sep 15, 2025
b77a7bd
Merge pull request #499 from mpretty-cyro/feature/rname-snode-kit
mpretty-cyro Sep 15, 2025
8c63465
Clean up update icon handlers
mikoldin123 Sep 15, 2025
b33524a
Merge remote-tracking branch 'upstream/dev' into feature/simplify-mig…
mpretty-cyro Sep 15, 2025
5e384eb
Moved and renamed remaining API definitions
mpretty-cyro Sep 15, 2025
45733f8
Merge pull request #501 from mpretty-cyro/feature/simplify-migrations
mpretty-cyro Sep 15, 2025
b08c068
Merge pull request #561 from session-foundation/feature/update-crowdi…
mpretty-cyro Sep 15, 2025
939ebfa
Fixed a home screen refresh issue
mpretty-cyro Sep 15, 2025
1ccd99b
Fixed a recovery password string which didn't have styling applied
mpretty-cyro Sep 15, 2025
ade137a
Bumped build and version numbers
mpretty-cyro Sep 16, 2025
4202b54
Resolved a TODO that was missed in the last release
mpretty-cyro Sep 16, 2025
d56923a
Fix missing `session_foundation` value for voice call dialog
mikoldin123 Sep 16, 2025
3f7dba7
Started working on adding dev settings to test subscriptions
mpretty-cyro Sep 16, 2025
a951f8d
Added a StoreKit config for testing, reordered some dev settings
mpretty-cyro Sep 17, 2025
c1a195a
Fixed an issue where UnsendRequests could be processed after their me…
mpretty-cyro Sep 17, 2025
94b4f39
Merge pull request #534 from mikoldin123/fix/SES-3433/delete_message_…
mpretty-cyro Sep 18, 2025
ff171a4
Merge pull request #535 from mikoldin123/fix/SES-4267/link_preview_mo…
mpretty-cyro Sep 18, 2025
cda1694
Merge pull request #544 from mikoldin123/feat/SES-3846/update_message…
mpretty-cyro Sep 18, 2025
d534301
Merge pull request #545 from mpretty-cyro/fix/delete-for-everyone-on-…
mpretty-cyro Sep 18, 2025
f78fc67
Merge pull request #546 from mikoldin123/fix/SES-4493/overly_large_fi…
mpretty-cyro Sep 18, 2025
42267de
Merge pull request #549 from mikoldin123/feat/SES-4520/update_block_c…
mpretty-cyro Sep 18, 2025
a0974b2
Merge pull request #550 from mpretty-cyro/fix/theming-and-main-actor
mpretty-cyro Sep 18, 2025
0346b17
Merge pull request #551 from mikoldin123/feat/SES-4526/update_dark_mo…
mpretty-cyro Sep 18, 2025
9bcf315
Merge pull request #555 from mpretty-cyro/fix/layout-issue-and-cleanup
mpretty-cyro Sep 18, 2025
b506a34
Merge pull request #556 from mikoldin123/fix/SES-4558/edit_image_func…
mpretty-cyro Sep 18, 2025
a66d699
Merge pull request #559 from mikoldin123/fix/SES-3841/show_keyboard_l…
mpretty-cyro Sep 18, 2025
9f30da1
Merge pull request #560 from mikoldin123/fix/SES-3841/app_icon_desgui…
mpretty-cyro Sep 18, 2025
28eda97
Merge pull request #564 from mpretty-cyro/fix/recovery-password-styli…
mpretty-cyro Sep 18, 2025
a12ff42
Merge pull request #566 from mikoldin123/fix/SES-4597/wrong_voice_cal…
mpretty-cyro Sep 18, 2025
79e9118
Merge remote-tracking branch 'upstream/dev' into feat/SES-3519/delete…
mpretty-cyro Sep 18, 2025
8153624
Fixed merge conflict issues
mpretty-cyro Sep 18, 2025
8f6dd12
Merge pull request #552 from mikoldin123/feat/SES-3519/deleted_messag…
mpretty-cyro Sep 18, 2025
c34cc08
Merge remote-tracking branch 'upstream/dev' into fix/home-screen-not-…
mpretty-cyro Sep 18, 2025
3307bcf
Merge pull request #573 from mikoldin123/fix/SES-4551/emoji_category_…
mpretty-cyro Sep 18, 2025
dcd5b22
Merge remote-tracking branch 'upstream/master' into fix/home-screen-n…
mpretty-cyro Sep 18, 2025
375ba8c
Merge branch 'dev' into fix/SES-4573/dimiss_keyboard_on_tap_out
mikoldin123 Sep 18, 2025
6f066ec
Merge pull request #574 from mikoldin123/fix/SES-4573/dimiss_keyboard…
mpretty-cyro Sep 18, 2025
8b740a0
Merge branch 'dev' into feat/SES-3085/remove_authentication_on_defaul…
mikoldin123 Sep 18, 2025
83fa692
Merge pull request #575 from mikoldin123/feat/SES-3085/remove_authent…
mpretty-cyro Sep 18, 2025
3cd185f
Merge remote-tracking branch 'upstream/dev' into fix/home-screen-not-…
mpretty-cyro Sep 18, 2025
e45ee5a
Re-apply 'fix/SES-4551/emoji_category_section_title' changes
mpretty-cyro Sep 18, 2025
567bade
Re-apply 'fix/SES-4573/dimiss_keyboard_on_tap_out' changes
mpretty-cyro Sep 18, 2025
6385830
Re-apply 'feat/SES-3085/remove_authentication_on_default_rooms' changes
mpretty-cyro Sep 18, 2025
a7e1375
Fixed broken tests
mpretty-cyro Sep 18, 2025
da9d925
[Automated] Update translations from Crowdin
Bilb Sep 18, 2025
4a53d9d
Merge pull request #563 from mpretty-cyro/fix/home-screen-not-refresh…
mpretty-cyro Sep 18, 2025
b194f2e
Merge pull request #578 from session-foundation/feature/update-crowdi…
mpretty-cyro Sep 18, 2025
1883b34
Merge remote-tracking branch 'upstream/dev' into fix/unsent-messages-…
mpretty-cyro Sep 18, 2025
909741f
Merge remote-tracking branch 'upstream/dev' into feature/dev-settings…
mpretty-cyro Sep 18, 2025
821083a
Merge pull request #567 from mpretty-cyro/feature/dev-settings-subscr…
mpretty-cyro Sep 19, 2025
742641b
Merge remote-tracking branch 'upstream/dev' into fix/unsent-messages-…
mpretty-cyro Sep 19, 2025
6ed6aec
Fixed a couple of layout issues found by the automated tests
mpretty-cyro Sep 19, 2025
6895c14
Bumped build number
mpretty-cyro Sep 19, 2025
fc7fc47
Fixed a bug where deleting a conversation would delete the contact
mpretty-cyro Sep 19, 2025
dc234ca
Merge pull request #569 from mpretty-cyro/fix/unsent-messages-not-del…
mpretty-cyro Sep 19, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
26 changes: 9 additions & 17 deletions .drone.jsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -77,10 +77,7 @@ local clean_up_old_test_sims_on_commit_trigger = {
{
name: 'Build and Run Tests',
commands: [
'echo "Explicitly running unit tests on \'App_Store_Release\' configuration to ensure optimisation behaviour is consistent"',
'echo "If tests fail inconsistently from local builds this is likely the difference"',
'echo ""',
'NSUnbufferedIO=YES xcodebuild test -project Session.xcodeproj -scheme Session -derivedDataPath ./build/derivedData -resultBundlePath ./build/artifacts/testResults.xcresult -parallelizeTargets -configuration "App_Store_Release" -destination "platform=iOS Simulator,id=$(<./build/artifacts/sim_uuid)" -parallel-testing-enabled NO -test-timeouts-enabled YES -maximum-test-execution-time-allowance 10 -collect-test-diagnostics never ENABLE_TESTABILITY=YES 2>&1 | xcbeautify --is-ci',
'./Scripts/build_ci.sh test -resultBundlePath ./build/artifacts/testResults.xcresult -destination "platform=iOS Simulator,id=$(<./build/artifacts/sim_uuid)" -parallel-testing-enabled NO -test-timeouts-enabled YES -maximum-test-execution-time-allowance 10 -collect-test-diagnostics never ENABLE_TESTABILITY=YES',
],
depends_on: [
'Reset SPM Cache if Needed',
Expand All @@ -99,31 +96,27 @@ local clean_up_old_test_sims_on_commit_trigger = {
status: ['success', 'failure'],
},
},
{
name: 'Check for Build/Test Failures',
commands: [
'echo "Checking for build errors or test failures in xcresult bundle..."',
'xcresultparser --output-format cli --failed-tests-only ./build/artifacts/testResults.xcresult'
],
depends_on: ['Build and Run Tests']
},
{
name: 'Log Failed Test Summary',
commands: [
'echo "--- FAILED TESTS ---"',
'xcresultparser --output-format cli --failed-tests-only ./build/artifacts/testResults.xcresult'
'xcresultparser --output-format cli --failed-tests-only ./build/artifacts/testResults.xcresult',
'exit 1' // Always fail if this runs to make it more obvious in the UI
],
depends_on: ['Check for Build/Test Failures'],
depends_on: ['Build and Run Tests'],
when: {
status: ['failure'], // Only run this on failure
},
},
{
name: 'Convert xcresult to xml',
name: 'Generate Code Coverage Report',
commands: [
'xcresultparser --output-format cobertura ./build/artifacts/testResults.xcresult > ./build/artifacts/coverage.xml',
],
depends_on: ['Build and Run Tests'],
when: {
status: ['success'],
},
},
],
},
Expand Down Expand Up @@ -157,8 +150,7 @@ local clean_up_old_test_sims_on_commit_trigger = {
{
name: 'Build',
commands: [
'mkdir build',
'NSUnbufferedIO=YES && xcodebuild archive -project Session.xcodeproj -scheme Session -derivedDataPath ./build/derivedData -parallelizeTargets -configuration "App_Store_Release" -sdk iphonesimulator -archivePath ./build/Session_sim.xcarchive -destination "generic/platform=iOS Simulator" | xcbeautify --is-ci',
'./Scripts/build_ci.sh archive -sdk iphonesimulator -archivePath ./build/Session_sim.xcarchive -destination "generic/platform=iOS Simulator"',
],
depends_on: [
'Reset SPM Cache if Needed',
Expand Down
11 changes: 6 additions & 5 deletions Scripts/EmojiGenerator.swift
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ enum RemoteModel {
case flags = "Flags"
case components = "Component"

var localizedKey: String = {
var localizedKey: String {
switch self {
case .smileys:
return "Smileys"
Expand All @@ -77,8 +77,8 @@ enum RemoteModel {
return "Flags"
case .components:
return "Component"
}
}()
}
}
}

static func fetchEmojiData() throws -> Data {
Expand Down Expand Up @@ -569,8 +569,9 @@ extension EmojiGenerator {
fileHandle.indent {
let stringKey = "emojiCategory\(category.localizedKey)"
let stringComment = "The name for the emoji category '\(category.rawValue)'"

fileHandle.writeLine("return NSLocalizedString(\"\(stringKey)\", comment: \"\(stringComment)\")")

fileHandle.writeLine("// \(stringComment)")
fileHandle.writeLine("return \"\(stringKey)\".localized()")
}
}
fileHandle.writeLine("}")
Expand Down
93 changes: 93 additions & 0 deletions Scripts/build_ci.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
#!/bin/bash

IFS=$' \t\n'

set -euo pipefail

if [ $# -lt 1 ]; then
echo "Error: Missing mode. Usage: $0 [test|archive] [unique_xcodebuild_args...]"
exit 1
fi

MODE="$1"
shift

COMMON_ARGS=(
-project Session.xcodeproj
-scheme Session
-derivedDataPath ./build/derivedData
-parallelizeTargets
-configuration "App_Store_Release"
)

UNIQUE_ARGS=("$@")
XCODEBUILD_RAW_LOG=$(mktemp)

trap 'rm -f "$XCODEBUILD_RAW_LOG"' EXIT

if [[ "$MODE" == "test" ]]; then

echo "--- Running Build and Unit Tests (App_Store_Release) ---"

xcodebuild_exit_code=0

# We wrap the pipeline in parentheses to capture the exit code of xcodebuild
# which is at PIPESTATUS[0]. We do not use tee to a file here, as the complexity
# of reading back the UUID is not necessary if we pass it via args.
(
NSUnbufferedIO=YES xcodebuild test \
"${COMMON_ARGS[@]}" \
"${UNIQUE_ARGS[@]}" 2>&1 | tee "$XCODEBUILD_RAW_LOG" | xcbeautify --is-ci
) || xcodebuild_exit_code=${PIPESTATUS[0]}

echo ""
echo "--- xcodebuild finished with exit code: $xcodebuild_exit_code ---"

if [ "$xcodebuild_exit_code" -eq 0 ]; then
echo "✅ All tests passed and build succeeded!"
exit 0
fi

echo ""
echo "🔴 Build failed"
echo "----------------------------------------------------"
echo "Checking for test failures in xcresult bundle..."

xcresultparser --output-format cli --no-test-result --coverage ./build/artifacts/testResults.xcresult
parser_output=$(xcresultparser --output-format cli --no-test-result ./build/artifacts/testResults.xcresult)

build_errors_count=$(echo "$parser_output" | grep "Number of errors" | awk '{print $NF}')
failed_tests_count=$(echo "$parser_output" | grep "Number of failed tests" | awk '{print $NF}')

if [ "${build_errors_count:-0}" -gt 0 ] || [ "${failed_tests_count:-0}" -gt 0 ]; then
echo ""
echo "🔴 Found $build_errors_count build error(s) and $failed_tests_count failed test(s) in the xcresult bundle."
exit 1
else
echo "No test failures found in results. Failure was likely a build error."
echo ""

echo "--- Summary of Potential Build Errors ---"
grep -E --color=always '(:[0-9]+:[0-9]+: error:)|(ld: error:)|(error: linker command failed)|(PhaseScriptExecution)|(rsync error:)' "$XCODEBUILD_RAW_LOG" || true
echo ""
echo "--- End of Raw Log ---"
tail -n 20 "$XCODEBUILD_RAW_LOG"
echo "-------------------------"
exit "$xcodebuild_exit_code"
fi

echo "----------------------------------------------------"
exit "$xcodebuild_exit_code"

elif [[ "$MODE" == "archive" ]]; then

echo "--- Running Simulator Archive Build (App_Store_Release) ---"

NSUnbufferedIO=YES xcodebuild archive \
"${COMMON_ARGS[@]}" \
"${UNIQUE_ARGS[@]}" 2>&1 | xcbeautify --is-ci

else
echo "Error: Invalid mode '$MODE' specified. Use 'test' or 'archive'."
exit 1
fi
Loading