Matt Kiazyk
a0a74ed5bf
Switch Xcode releases back to using Apple Auth :(
2022-11-17 22:39:38 -06:00
Leon Wolf
0e45884608
Merge branch 'main' into feature/144-add-error-on-uninstall
...
# Conflicts:
# Xcodes.xcodeproj/project.pbxproj
2022-11-11 17:24:14 +01:00
tt37
6e8dbbc6de
Fix typo
2022-10-13 11:13:28 +02:00
Leon Wolf
ed2e5bfcaa
add error message when trying to uninstall Xcode if file not found
2022-10-06 08:42:40 +02:00
Leon Wolf
7ae956e44d
add Xcode-Beta.app Symlink and localizations
2022-10-05 20:34:35 +02:00
Matt Kiazyk
8b43903b42
Add ability to download Xcode without logging in using XcodeRelease
2022-09-16 21:34:14 -05:00
Matt Kiazyk
38b7fe77dd
Allow ability to change the installation directory
2022-07-28 19:51:13 -05:00
Matt Kiazyk
b64af2fc44
add option to rename Xcode to Xcode.app on select.
2022-07-24 15:27:34 -05:00
Matt Kiazyk
155b57f202
Merge pull request #257 from swiftty/fix-sms-on-cancel
...
Fix crash on sign in sheet cancel
2022-07-24 12:36:29 -05:00
swiftty
a70069ce87
Fix sign in sheet cancel behavior
2022-06-24 12:52:38 +09:00
Daiki Matsudate
575a7269df
Add copy release note url menu
2022-06-17 13:57:12 +09:00
Ege Sucu
25bbe1cb54
added Turkish Language improvements & Localized WWDC Message.
2022-06-09 14:57:12 +03:00
Matt Kiazyk
9f013ccdf2
Adds a bottom status bar to the window
2022-06-04 21:30:39 -05:00
Matt Kiazyk
aad0f54ed3
Merge pull request #203 from RobotsAndPencils/localization
...
Support Localization
2022-04-19 08:31:41 -05:00
Matt Kiazyk
1d22be649a
convert strings to support Localization
2022-04-17 21:29:51 -05:00
Matt Kiazyk
abf8dbf7b2
Fix: Load create SymLink preference on start
2022-04-15 08:29:41 -05:00
Matt Kiazyk
f7b4c5e2bb
Make Symbolic Link on Xcode Select
2022-04-14 14:34:44 -05:00
Matt Kiazyk
b36ef479a7
Merge pull request #199 from RobotsAndPencils/MinOSVersionCheck
...
Add check for min MacOS version when installing
2022-04-13 21:03:59 -05:00
Matt Kiazyk
20e7b57ad4
Add check for min MacOS version when installing
2022-04-12 20:11:42 -05:00
Matt Kiazyk
4cee0f2f15
Adds option to create symbolic link at Path Xcode.app
2022-04-11 19:37:11 -05:00
Andrew Erickson
c2259cf078
use fixed locale for date parsing of api responses
2022-04-09 12:12:16 -06:00
Matt Kiazyk
ce001c8e68
add a unxip experiment for faster unxipping
2022-02-06 13:25:23 -06:00
Matt Kiazyk
709af9e97a
Update download task to check for resultCode !=0
2021-11-09 16:25:26 -06:00
Matt Kiazyk
e11cdd1198
Fix up Tests - modify validateSession to use our network wrapper.
2021-10-19 10:54:47 -05:00
Matt Kiazyk
1496f32e28
Better handling of when AppleId is not a developer
2021-10-14 15:43:16 -05:00
Matt Kiazyk
04c79c36ad
Merge pull request #156 from RobotsAndPencils/matt/OpenIdenticalBuilds
...
Better handling of duplicate builds and buttons not working
2021-10-08 16:27:32 -05:00
Matt Kiazyk
06d7b494aa
PR review cleanup
2021-10-08 16:22:12 -05:00
Matt Kiazyk
68838ecb4c
fix: better handling of opening duplicate builds
2021-10-08 15:56:29 -05:00
Matt Kiazyk
3a5b63b174
Adds ability to switch the local cache directory
2021-10-01 16:51:33 -05:00
Teddy Newell
0c14934e58
Add release date view to InfoPane
2021-08-05 17:34:16 -07:00
Andrew Erickson
85340e6189
Merge pull request #131 from RobotsAndPencils/andrew/duplicateAlerts
...
only present a single alert at time
2021-05-02 09:27:58 -06:00
Andrew Erickson
ec2d76a9fe
clear login credentials after any auth failure
2021-05-02 09:10:39 -06:00
Andrew Erickson
a7e36ca709
prevent alerts refreshing xcode with invalid session
2021-05-02 09:05:48 -06:00
Matt Kiazyk
31ffac80d3
PR updates
2021-05-02 10:02:30 -05:00
Matt Kiazyk
ecfb49a216
Merge branch 'main' into Notifications
2021-05-02 09:38:29 -05:00
Andrew Erickson
9395b1fda2
only present a single alert at time
2021-05-02 07:52:42 -06:00
Andrew Erickson
2289692422
show auth errors inline on sign in view
2021-05-01 09:12:53 -06:00
Andrew Erickson
357121bad5
fix branch conflicts
2021-04-30 20:15:54 -06:00
Andrew Erickson
cafa7baf1f
present two factor sheet after 2fa data is set
2021-04-30 14:56:40 -06:00
Andrew Erickson
287b5500fe
present sign in when credentials are required
2021-04-30 14:43:54 -06:00
Matt Kiazyk
094bb6f0cc
Adds MacOS notifications
2021-04-28 21:50:44 -05:00
Sam Lu
59971fbe1e
Create universal aria2 binary
...
Fat binary generated via `lipo` that contains support for both x86_64 and arm64
2021-04-22 23:21:32 -06:00
Sam Lu
350e5708b7
Bundle M1-compatible version of aria2
2021-04-15 17:46:44 -06:00
Matt Kiazyk
0c94a76baa
Merge pull request #115 from RobotsAndPencils/EstimatedNewLine
...
Updates estimated time on info pane to 2 lines for better readability
2021-03-10 08:28:17 -06:00
Matt Kiazyk
da56b2ac6d
Updates estimated time on info pane to 2 lines for better readability
2021-03-07 14:33:32 -06:00
Matt Kiazyk
8011f4a288
Auto Install Xcode if wanted
2021-03-07 14:21:27 -06:00
Brandon Evans
2f04d23eac
Use Logger for Progress.updateFromAria2
2021-02-18 19:19:30 -07:00
Brandon Evans
899eec7dae
Don't attempt to parse days from aria2c ETA
...
I had initially suggested this but then went and checked in the source and the largest unit in the format is hours. 52da4e40ea/src/util.cc (L518-L534)
2021-02-18 19:16:08 -07:00
Brandon Evans
e301ad8818
Configure aria2c Progress better
...
Using .file kind and .downloading file operation kind will produce a more appropriate localizedAdditionalDescription.
The fileTotalCount and fileCompletedCount aren't appropriate for this case, because there's only one file being downloaded.
2021-02-18 19:14:44 -07:00
Matt Kiazyk
b06be4e3fa
Download stats for Aria2
2021-02-13 21:23:22 -06:00
Brandon Evans
9eda0984ac
Merge pull request #100 from RobotsAndPencils/identical-builds
...
Improve how identical builds are represented in the UI
2021-02-08 08:16:32 -07:00
Brandon Evans
b8bae4f32c
Don't consider versions without build identifiers for identical builds
2021-02-06 14:56:28 -07:00
Matt Kiazyk
1c6efbbbb1
default to aria2
2021-02-06 14:31:46 -06:00
Matt Kiazyk
c6e3382d94
When downloading, use the downloader from userdefaults
2021-02-05 08:32:23 -06:00
Brandon Evans
760c9f300e
Handle duplicate 3.2.3 release builds
...
:/
2021-02-04 21:25:01 -07:00
Brandon Evans
dcd4001548
Merge identical builds into the release version instead of filtering
2021-02-04 21:25:00 -07:00
Brandon Evans
bc45daeb74
Only adjust available versions for Apple data source
2021-02-04 21:25:00 -07:00
Brandon Evans
7ac4814420
Treat GM versions as release versions
2021-02-04 21:25:00 -07:00
Brandon Evans
57767f6920
Fix RC capitalization
2021-02-04 21:25:00 -07:00
Matt Kiazyk
75cbd9550b
Adjust ByteCountFormatter. PR Feedback
2021-02-03 21:55:47 -06:00
Matt Kiazyk
b53c480764
Adds a DownloadFileSize when using Apple Data Source
2021-02-01 21:18:49 -06:00
Brandon Evans
352816f64a
Merge pull request #87 from RobotsAndPencils/auth-pref-ui-change
...
Show stored username in General preference pane even when we don't have a valid session
2021-01-26 08:50:18 -07:00
Brandon Evans
75457dd9eb
Show stored username in General preference pane
...
This reverts the change from 90c067997b so that the username is shown in situations where we don't have a valid session but could almost certainly get one. Instead, to achieve what that commit was trying to do, we'll instead remove the username from UserDefaults if auth fails with an invalid username or password error. I think this will more closely match what users expect in this UI.
I've added a comment in the UI explaining why it is the way it is. It might also be worth considering renaming AuthenticationState or its cases to better reflect that it's probably more about the (short-lived) session state than whether the user has signed in before and has stored their credentials.
2021-01-25 19:56:28 -07:00
Brandon Evans
58cddb88f6
Try to improve auth error messages
2021-01-25 19:36:49 -07:00
Brandon Evans
cb507c3d02
Prepare user for helper installation before post-install steps
2021-01-23 20:25:28 -07:00
Brandon Evans
044f066422
Extract HelperInstallState to new file
2021-01-23 19:38:11 -07:00
Brandon Evans
d84173e29c
Prepare user for helper installation
...
Doesn't yet handle the post-install steps that need the helper.
2021-01-23 19:38:11 -07:00
Brandon Evans
408d05a4a7
Merge pull request #80 from RobotsAndPencils/handle-helper-install-errors
...
Handle helper installation errors
2021-01-23 15:00:57 -07:00
Brandon Evans
91293557ec
Catch and reword xip "not enough free space" error
2021-01-23 13:28:43 -07:00
Brandon Evans
6b5c288a40
Unwrap auth error messages to avoid "Optional(...)"
2021-01-22 22:19:31 -07:00
Brandon Evans
e21e4d9cdf
Handle helper installation errors
2021-01-22 22:18:59 -07:00
Matt Kiazyk
aa49f36b03
don't show brackets when buildMetadataIdentifiers is empty
2021-01-20 21:13:53 -06:00
Brandon Evans
e467f26adc
Add more logging to HelperClient
2021-01-17 12:37:40 -07:00
Brandon Evans
3d5edb3968
Replace NSError() with specific error
2021-01-17 12:29:28 -07:00
Brandon Evans
55e0447e54
Invalidate XPC connection after installing
2021-01-17 11:57:45 -07:00
Brandon Evans
a504504825
Always show build identifiers in list and info pane
2021-01-16 13:30:52 -07:00
Brandon Evans
4301667000
Replace print/dump/NSLog with os.log Logger
2021-01-16 13:14:27 -07:00
Brandon Evans
cd2bde2272
Move Xcode path into XcodeInstallState.installed case
2021-01-16 13:09:48 -07:00
Brandon Evans
bc27f1785b
Filter out prerelease versions that have the same build identifier as a release build
2021-01-16 11:40:27 -07:00
Brandon Evans
62237bf4a8
Fix a bug when an installed version was appended
...
We were appending a version without appending a corresponding AvailableXcode, and these two arrays were being zipped later so they wouldn't line up. This change simplifies this method a bit by working on only a single array, and then also moves that appending to the end after the array of Xcodes is created.
2021-01-16 11:40:04 -07:00
Brandon Evans
26da7969a1
Make sure install updates happen on main queue
2021-01-16 10:15:39 -07:00
Brandon Evans
ed023218b8
Simplify Version comparison
2021-01-16 10:15:39 -07:00
Brandon Evans
faad4c2ab7
Fix bug where adjusted versions weren't used to look up AvailableXcodes
2021-01-16 10:15:39 -07:00
Brandon Evans
baa8491786
If build metadata identifiers match, treat it as a match regardless of other version components
2021-01-16 10:15:39 -07:00
Brandon Evans
ad02e89449
Add failing test to cover removing an uninstalled version, fix it
...
https://github.com/RobotsAndPencils/XcodesApp/pull/44#issuecomment-756783640
2021-01-16 10:15:32 -07:00
Brandon Evans
0295bc8b1b
Stop aria2c if Xcodes stops
...
I removed this because I thought it wasn't necessary for some reason. We do send a SIGTERM if the user cancels the installation (via subscription cancellation), but if the whole app quits aria2c would keep running in the background.
2021-01-12 20:51:22 -07:00
Brandon Evans
93f819f2f3
Add downloaders to SettingsView
2021-01-08 17:22:38 -07:00
Brandon Evans
23cd43011b
Bundle aria2c 1.35.0 executable and source
2021-01-08 17:22:38 -07:00
Brandon Evans
fecb40893f
Don't replace existing install state when updating
2021-01-07 21:25:08 -07:00
Brandon Evans
4a33d010a8
Confirm before cancelling installation
2021-01-07 21:25:08 -07:00
Brandon Evans
1a830dc9dc
Add cancel install button to context menu and info pane
2021-01-07 21:25:08 -07:00
Brandon Evans
482b32e4e0
Add isTesting to make NSTestCase check more clear
2021-01-07 21:25:07 -07:00
Brandon Evans
89143b8751
Dispatch Process.run work manually instead of using subscribe(on:) and receive(on:)
...
The previous implementation was doing something weird when it was used during installation in:
verifySecurityAssessment(of: installedXcode)
.combineLatest(self.verifySigningCertificate(of: installedXcode.path.url))
It looks like it would subscribe after the Process.run future had already sent a value, and so it would never finish. This seems weird, and I'm assuming that I'm misunderstanding something about this behaviour, but dispatching manually seems reasonable and works.
2021-01-07 21:25:07 -07:00
Brandon Evans
bfb3fd9ea5
Add install functionality
...
I'm omitting aria2 support for now.
2021-01-07 21:25:07 -07:00
Brandon Evans
a3e9101397
Replace .alert with .emittingError
2021-01-04 16:23:35 -07:00
Brandon Evans
813489b5fa
Add Environment+Mock
2021-01-03 10:18:48 -07:00
Brandon Evans
b1e6cffd09
Use helper from Current
2021-01-03 10:18:08 -07:00
Brandon Evans
f3680da2ae
Add InstallationStepView
2021-01-01 15:36:20 -07:00
Brandon Evans
ba1c4fec0f
Merge pull request #38 from RobotsAndPencils/remove-promisekit
...
Remove PromiseKit
2021-01-01 15:03:34 -07:00
Brandon Evans
245780023b
Convert Current.shell to Combine
2021-01-01 15:02:21 -07:00