Skip to content

Commit a83852b

Browse files
committed
^ Multiple outdated package retrieval processes running at the same time
1 parent 07bc0e5 commit a83852b

2 files changed

Lines changed: 21 additions & 0 deletions

File tree

Cork/Views/Start Page/Sub-Views/Outdated Packages/Outdated Package Loader Box.swift

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ struct OutdatedPackageLoaderBox: View
1919

2020
@Binding var errorOutReason: String?
2121

22+
@State private var anotherOutdatedPackageRetrievalProcessIsAlreadyRunning: Bool = false
23+
2224
var body: some View
2325
{
2426
Grid
@@ -35,12 +37,25 @@ struct OutdatedPackageLoaderBox: View
3537
}
3638
.task
3739
{
40+
guard anotherOutdatedPackageRetrievalProcessIsAlreadyRunning == false else
41+
{
42+
AppConstants.shared.logger.info("Another outdated package retrieval process is already running. Will not start another one.")
43+
44+
return
45+
}
46+
47+
anotherOutdatedPackageRetrievalProcessIsAlreadyRunning = true
48+
3849
outdatedPackagesTracker.isCheckingForPackageUpdates = true
3950

51+
AppConstants.shared.logger.info("Will start outdated package retrieval process")
52+
4053
defer
4154
{
4255
withAnimation
4356
{
57+
anotherOutdatedPackageRetrievalProcessIsAlreadyRunning = false
58+
4459
outdatedPackagesTracker.isCheckingForPackageUpdates = false
4560
}
4661
}

Modules/Packages/PackagesModels/Logic/Package Loading/Get Outdated Packages.swift

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,12 @@ public extension OutdatedPackagesTracker
9090
/// Introduces an empty argument in case the updating is non-greedy
9191
let rawOutput: TerminalOutput = await shell(AppConstants.shared.brewExecutablePath, ["outdated", updatingType.argument, "--json=v2"])
9292

93+
AppConstants.shared.logger.debug("""
94+
Output of outdated packages retrieval:
95+
Standard output: \(rawOutput.standardOutput)
96+
Standard error: \(rawOutput.standardError)
97+
""")
98+
9399
// MARK: - Error checking
94100

95101
if rawOutput.standardError.contains("HOME must be set")

0 commit comments

Comments
 (0)