Skip to content

Commit e84dcd6

Browse files
Remove the 'nativeJetpackConnection' feature flag (#24731)
* Remove the 'nativeJetpackConnection' feature flag * Sync blog options after connected * Fix a typo Co-authored-by: Oguz Kocer <[email protected]> --------- Co-authored-by: Oguz Kocer <[email protected]>
1 parent 960c612 commit e84dcd6

File tree

2 files changed

+22
-8
lines changed

2 files changed

+22
-8
lines changed

WordPress/Classes/Utility/BuildInformation/FeatureFlag.swift

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ public enum FeatureFlag: Int, CaseIterable {
2424
case selfHostedSiteUserManagement
2525
case readerGutenbergCommentComposer
2626
case pluginManagementOverhaul
27-
case nativeJetpackConnection
2827
case newsletterSubscribers
2928
case newStats
3029

@@ -79,8 +78,6 @@ public enum FeatureFlag: Int, CaseIterable {
7978
return false
8079
case .pluginManagementOverhaul:
8180
return false
82-
case .nativeJetpackConnection:
83-
return BuildConfiguration.current == .debug
8481
case .newsletterSubscribers:
8582
return true
8683
case .newStats:
@@ -126,7 +123,6 @@ extension FeatureFlag {
126123
case .selfHostedSiteUserManagement: "Self-hosted Site User Management"
127124
case .pluginManagementOverhaul: "Plugin Management Overhaul"
128125
case .readerGutenbergCommentComposer: "Gutenberg Comment Composer"
129-
case .nativeJetpackConnection: "Native Jetpack Connection"
130126
case .newsletterSubscribers: "Newsletter Subscribers"
131127
case .newStats: "New Stats"
132128
}

WordPress/Classes/ViewRelated/Jetpack/Login/JetpackConnectionViewModel.swift

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,7 @@ private enum JetpackConnectionError: LocalizedError {
170170
}
171171

172172
class JetpackConnectionService {
173+
private let blogId: TaggedManagedObjectID<Blog>
173174
private let client: WordPressClient
174175
private let jetpackConnectionClient: JetpackConnectionClient
175176

@@ -179,12 +180,8 @@ class JetpackConnectionService {
179180
// - The site is authenticated with application password, and
180181
// - Jetpack is not installed, or the installed jetpack version is 14.2 or above.
181182

182-
guard FeatureFlag.nativeJetpackConnection.enabled else { return nil }
183-
184183
guard blog.account == nil else { return nil }
185184

186-
guard (try? blog.getApplicationToken()) != nil else { return nil }
187-
188185
if let jetpack = blog.jetpack, jetpack.isInstalled, let version = jetpack.version,
189186
// The `version` value is not a strict semantic version number.
190187
version.compare("14.2", options: .numeric) == .orderedAscending {
@@ -197,6 +194,7 @@ class JetpackConnectionService {
197194
return nil
198195
}
199196

197+
self.blogId = TaggedManagedObjectID(blog)
200198
self.client = .init(site: site)
201199
self.jetpackConnectionClient = .init(
202200
apiRootUrl: apiRootURL,
@@ -272,6 +270,26 @@ class JetpackConnectionService {
272270
)
273271
}
274272
}
273+
274+
// Refresh the blog options, so that we can get the latest Jetpack related status.
275+
try await withCheckedThrowingContinuation { [blogId] (continuation: CheckedContinuation<Void, Error>) in
276+
DispatchQueue.main.async {
277+
let blog: Blog
278+
do {
279+
blog = try ContextManager.shared.mainContext.existingObject(with: blogId)
280+
} catch {
281+
continuation.resume(throwing: error)
282+
return
283+
}
284+
285+
let service = BlogService(coreDataStack: ContextManager.shared)
286+
service.syncBlog(
287+
blog,
288+
success: { continuation.resume(returning: ()) },
289+
failure: { continuation.resume(throwing: $0) }
290+
)
291+
}
292+
}
275293
}
276294
}
277295

0 commit comments

Comments
 (0)