Commit Graph

92 Commits

Author SHA1 Message Date
Davide
f87cc1da0b
Fix OpenVPN/WireGuard import error messages ()
OpenVPN parser was indirectly swallowing WireGuard errors.
2024-12-01 21:33:58 +01:00
Davide
7af703c164
Move app library to the root ()
Makes it easier to search among app files and library files.
2024-11-28 17:45:18 +01:00
Davide
c0dc2181e3
Complete CI/CD release workflow ()
Import current metadata and screenshots.

Fixes 
2024-11-27 19:10:23 +01:00
Davide
ed1d78d424
Add manual flow to run Xcode tests 2024-11-26 16:24:12 +01:00
Davide
2d698cabfe
Reuse modifier for navigation stacks with close button ()
Refactored:

- iOS
  - VPNProviderServerView
- macOS
  - AboutView
  - ProfileSplitView
- Both
  - ProfileCoordinator
  - VPNProviderServerCoordinator
2024-11-13 19:17:00 +01:00
Davide
c5047533b5
Run tests before building ()
Workflow from  was incorrect, as it was running tests for each build
in the matrix. Do it only once before the matrix.

Fixes 
2024-11-12 18:46:21 +01:00
Davide
54f4364c33
Split test jobs ()
Move Core Data tests out of the Library package so that we can still use
the more efficient `swift test` for most tests.

Create a PassepartoutTests target only for tests that require
`xcodebuild`, like Core Data tests.

Eventually:

- PRs only run SwiftPM tests
- Releases run ALL tests with `scan` before `gym`
2024-11-12 18:35:44 +01:00
Davide
e514ade036
Add logic to migrate v2 profiles ()
Will add UI separately.

Fixes 
2024-11-12 16:42:19 +01:00
Davide
fccba7d8cb
Change CI timeouts
- Release -> 20
- Test -> 10
2024-11-07 01:49:07 +01:00
Davide
237277d4db
Do some refactoring in AppUI targets ()
- Refactor AppUI initialization in all platforms (sort of template
method pattern)
- Make AppMenu specific to macOS by wrapping it into a folder for
consistency
- Add SizeClassProviding for repeated checks on hsClass/vsClass

Fixes 
2024-10-31 10:02:21 +01:00
Davide De Rosa
b7e8e15d1b
Bump version 2024-09-24 17:56:27 +02:00
Davide
bce2694694
Fix lookup of pilot metadata ()
- [x] Fetch app version/build without agvtool, unavailable on
ubuntu-latest
- [x] Move TestFlight preface to a repository variable
- [x] Move TestFlight URL to README instead
2024-09-24 17:51:01 +02:00
Davide
a665670cf7
Add job for public beta deployment ()
Closes 
2024-09-24 11:17:52 +02:00
Davide
6cc86e8668
Import v3 code ()
Closes 
2024-09-23 15:02:26 +02:00
Davide De Rosa
444b51317c
Use stable Xcode 2024-09-22 16:16:19 +02:00
Davide De Rosa
a806275d0b
Try fix keychain in CI 2024-09-22 16:02:33 +02:00
Davide De Rosa
bf4dc6c920
Add tvOS build to beta/review CI jobs ()
_Should_ work out of the box.

Closes 
2024-01-07 12:17:46 +01:00
Davide De Rosa
f13b4d0768
Upload tvOS build to TestFlight ()
Update the release workflow by adding tvOS to the matrix. The build job
should work, not 100% sure about pilot.
2024-01-06 10:55:44 +01:00
Davide De Rosa
b23e2b974e
Lock gems platform 2024-01-06 00:10:11 +01:00
Davide De Rosa
31005c84ba
Add tvOS to matrix 2024-01-06 00:06:15 +01:00
Davide De Rosa
5c5697762b
Add minimal TV app
Closes 
2023-12-31 01:21:38 +01:00
Davide De Rosa
a0da930d98
Refactor and test ProductManager ()
Carefully drop the StoreKit and Kvitto dependencies for ProductManager
to be testable.

Rebuild test target completely to start writing meaningful tests in
general.
2023-12-20 20:43:39 +01:00
Davide De Rosa
2357324a74
Update some metadata ()
A bit of everything.

- Use GitHub handles in CHANGELOG
- Mention XOR patch in README and keywords
- Update gems
- Add GitHub issue template
- Fix missing script in release workflow
2023-07-17 21:46:32 +02:00
Davide De Rosa
773d5705f1 Upgrade GitHub Actions 2023-07-06 18:46:01 +01:00
Davide De Rosa
f0e3b2fa9c
Improve release workflow () 2023-07-05 18:07:47 +02:00
Davide De Rosa
fc68c674a5
Address issues with release notes in workflow ()
* In release workflow, infer release notes from CHANGELOG

* Retain links in GitHub release notes
2023-04-07 12:08:55 +02:00
Davide De Rosa
ba09dcffa7
Full OpenVPN XOR patch () 2022-11-06 18:08:41 +01:00
Davide De Rosa
b1114514f0 Fix missing identity for beta tag 2022-11-01 19:00:26 +01:00
Davide De Rosa
dc76776fe8 Annotate public beta tags 2022-10-31 14:05:15 +01:00
Davide De Rosa
7ef32882f1
Freeze release workflow ()
* Freeze release workflow

- Do not pull anything from master

- Do not push release commit to master

- Only push created version tag

* Refine scripts to start new version

1. Cherry-pick hotfixes from released version

2. Bump version to new version

Normally, 1 is only made of the release commit updating CHANGELOG
with the release date.

However, if a release branch was needed to apply hotfixes to the
latest release, cherry picking will account for the whole release
branch (i.e. multiple commits).

* Ignore more paths for unit testing
2022-10-30 12:56:49 +01:00
Davide De Rosa
aca431aac5
Run tests on PR () 2022-10-30 11:53:53 +01:00
Davide De Rosa
9962401d74 Fix some issues in scripts
- Always use bash for consistent script behavior

- Replace deprecated set-output in GitHub workflows
2022-10-17 13:39:54 +02:00
Davide De Rosa
3a2ff219b6 Restore lost job need
Added in 3b5d5db, lost in 4aba5f4.
2022-09-30 22:01:01 +02:00
Davide De Rosa
c581042b10 Enable macOS public beta workflow 2022-07-17 14:48:14 +02:00
Davide De Rosa
0ff831f021 Fix target in test workflow 2022-06-25 20:27:24 +02:00
Davide De Rosa
930ff65193 Revert "Enable macOS in "Public Beta" job"
This reverts commit 6bb46ef8b4.
2022-05-21 19:15:37 +02:00
Davide De Rosa
6bb46ef8b4 Enable macOS in "Public Beta" job 2022-05-18 11:17:39 +02:00
Davide De Rosa
cdf4010f09 Pass GITHUB_TOKEN to workflows env
Workflows failing to push changes. Could this fix it?
2022-05-17 23:16:52 +02:00
Davide De Rosa
ec1b167e41 Restore Mac in private beta 2022-05-17 19:36:23 +02:00
Davide De Rosa
115f54edbd Bump CI to macOS 12
Features Xcode 13.3.1, consistent with local development.

Maybe works around accent color bug.
2022-05-17 16:42:37 +02:00
Davide De Rosa
c0cc65b7ea Try move BUILD_NUMBER to global workflow env 2022-04-27 15:59:41 +02:00
Davide De Rosa
a7258b3a94 Tag private beta after upload 2022-04-27 13:40:58 +02:00
Davide De Rosa
c63a39081b Notify private beta testers based on env 2022-04-23 12:26:46 +02:00
Davide De Rosa
0d8121f73d Fix missing quotes 2022-04-23 10:37:05 +02:00
Davide De Rosa
8d2494d885 Refactor private beta workflow
- Reword main job

- Move tweak arguments to step env
2022-04-23 10:33:54 +02:00
Davide De Rosa
bb2ba19326
Fix Info.plist path in private beta workflow 2022-04-22 13:47:10 +02:00
Davide De Rosa
14edc7491e Fix syntax -_- 2022-04-13 22:46:35 +02:00
Davide De Rosa
f064c02b04 Disable macOS in private beta for now 2022-04-13 22:45:08 +02:00
Davide De Rosa
57a041ca7c Add manual workflow for private beta
Tolerate dirty repo (for tweaking Info.plist).

Should refactor later to reuse build tasks from release workflow
as local actions.
2022-04-13 22:28:00 +02:00
Davide De Rosa
1532e8808b [ci skip] Address CI and ASC validation issues
- Skip tests until fixed wg-go issue

- Add golang step

- Set "Apple Development" at project level

- Set Catalyst platform for gym

- Drop TARGET env variable clashing with WireGuardKit

- Disable SwiftGen script phase

- Fix TunnelKit segfault on archive

- Xcode 13.2.1 compatibility
    Fix some issues with @MainActor
    Use #available instead of #unavailable

- Raise timeout from 10 to 15 minutes

- Update beta description

- Tunnel bundle ids cannot have periods

- CFBundleDisplayName required in tunnels
2022-04-13 10:00:29 +02:00