Skip to content

Commit

Permalink
Remove tvOS 14 support
Browse files Browse the repository at this point in the history
  • Loading branch information
kean committed Apr 29, 2023
1 parent 333edf3 commit da0aa33
Show file tree
Hide file tree
Showing 22 changed files with 49 additions and 55 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
## WIP

- `ConsoleView` no longer supports iOS 14, but the packge can still be installed in projects that require iOS 14
- Increase minimum deployment target on tvOS 14.0 → 15.0

## Pulse 3.7.0

Expand Down
2 changes: 1 addition & 1 deletion Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ let package = Package(
name: "Pulse",
platforms: [
.iOS(.v14),
.tvOS(.v14),
.tvOS(.v15),
.macOS(.v12),
.watchOS(.v8)
],
Expand Down
4 changes: 2 additions & 2 deletions Pulse.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -2484,7 +2484,7 @@
SUPPORTS_MACCATALYST = YES;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
TVOS_DEPLOYMENT_TARGET = 14.0;
TVOS_DEPLOYMENT_TARGET = 15.0;
WATCHOS_DEPLOYMENT_TARGET = 8.0;
};
name = Debug;
Expand Down Expand Up @@ -2534,7 +2534,7 @@
SUPPORTS_MACCATALYST = YES;
SWIFT_COMPILATION_MODE = wholemodule;
SWIFT_OPTIMIZATION_LEVEL = "-O";
TVOS_DEPLOYMENT_TARGET = 14.0;
TVOS_DEPLOYMENT_TARGET = 15.0;
VALIDATE_PRODUCT = YES;
WATCHOS_DEPLOYMENT_TARGET = 8.0;
};
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ The best way to start using Pulse is with the [**Getting Started**](https://kean

| Pulse | Swift | Xcode | Platforms |
|------------|-----------|-------------|----------------------------------------------|
| Pulse 4.0 | Swift 5.7 | Xcode 14.1 | iOS 14.0, tvOS 15.0, watchOS 8.0, macOS 12.0 |
| Pulse 3.0 | Swift 5.7 | Xcode 14.1 | iOS 14.0, tvOS 14.0, watchOS 8.0, macOS 12.0 |
| Pulse 2.0 | Swift 5.6 | Xcode 13.3 | iOS 13.0, tvOS 13.0, watchOS 7.0, macOS 11.0 |

## License

Expand Down
2 changes: 1 addition & 1 deletion Sources/PulseUI/Extensions/Foundation+Extensions.swift
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ extension Character {
}
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
extension AttributedString {
init(_ string: String, _ configure: (inout AttributeContainer) -> Void) {
var attributes = AttributeContainer()
Expand Down
7 changes: 4 additions & 3 deletions Sources/PulseUI/Features/Console/ConsoleView-tvos.swift
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@
//
// Copyright (c) 2020–2023 Alexander Grebenyuk (github.com/kean).

#if os(tvOS)

import SwiftUI
import CoreData
import Pulse
import Combine

#if os(tvOS)

public struct ConsoleView: View {
@StateObject private var environment: ConsoleEnvironment
@StateObject private var listViewModel: ConsoleListViewModel
Expand All @@ -22,7 +22,7 @@ public struct ConsoleView: View {
GeometryReader { proxy in
HStack {
List {
ConsoleListContentView(viewModel: listViewModel)
ConsoleListContentView()
}

// TODO: Not sure it's valid
Expand All @@ -38,6 +38,7 @@ public struct ConsoleView: View {
.onDisappear { listViewModel.isViewVisible = false }
}
.injecting(environment)
.environmentObject(listViewModel)
}
}

Expand Down
3 changes: 2 additions & 1 deletion Sources/PulseUI/Features/Console/ConsoleView-watchos.swift
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public struct ConsoleView: View {
public var body: some View {
List {
ConsoleToolbarView(environment: environment)
ConsoleListContentView(viewModel: listViewModel)
ConsoleListContentView()
}
.navigationTitle(environment.title)
.onAppear { listViewModel.isViewVisible = true }
Expand All @@ -32,6 +32,7 @@ public struct ConsoleView: View {
}
}
.injecting(environment)
.environmentObject(listViewModel)
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import Pulse
import Combine
import SwiftUI

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleListPinsSectionView: View {
@ObservedObject var viewModel: ConsoleListViewModel

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ private struct _ConsoleTaskCell: View {
}

#if os(iOS) || os(macOS)
@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
private struct ConsoleMessageCellPreview: View {
let message: LoggerMessageEntity

Expand All @@ -140,7 +140,7 @@ private struct ConsoleMessageCellPreview: View {
}
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
private struct ConsoleTaskCellPreview: View {
let task: NetworkTaskEntity

Expand All @@ -151,7 +151,7 @@ private struct ConsoleTaskCellPreview: View {
}
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
private struct TextViewPreview: View {
let string: NSAttributedString

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import Pulse
import CoreData
import Combine

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleMessageCell: View {
let message: LoggerMessageEntity
var isDisclosureNeeded = false
Expand Down Expand Up @@ -115,7 +115,7 @@ extension Color {
}

#if DEBUG
@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleMessageCell_Previews: PreviewProvider {
static var previews: some View {
ConsoleMessageCell(message: try! LoggerStore.mock.allMessages()[0])
Expand Down
4 changes: 2 additions & 2 deletions Sources/PulseUI/Features/Console/Views/ConsoleTaskCell.swift
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import Pulse
import Combine
import CoreData

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleTaskCell: View {
@ObservedObject var task: NetworkTaskEntity
var isDisclosureNeeded: Bool
Expand Down Expand Up @@ -162,7 +162,7 @@ private struct ConsoleProgressText: View {
}

#if DEBUG
@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleTaskCell_Previews: PreviewProvider {
static var previews: some View {
ConsoleTaskCell(task: LoggerStore.preview.entity(for: .login))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import SwiftUI
import Pulse
import Combine

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleDomainsSelectionView: View {
@ObservedObject var viewModel: ConsoleFiltersViewModel
@EnvironmentObject private var index: LoggerStoreIndex
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import SwiftUI
import Pulse
import Combine

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleLabelsSelectionView: View {
@ObservedObject var viewModel: ConsoleFiltersViewModel
@EnvironmentObject private var index: LoggerStoreIndex
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import SwiftUI
import Pulse

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleSearchListSelectionView<Data: RandomAccessCollection, ID: Hashable, Label: View>: View {
let title: String
let items: Data
Expand Down Expand Up @@ -148,15 +148,15 @@ struct ConsoleSearchListCell: View {
}

#if DEBUG
@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleSearchListSelectionView_Previews: PreviewProvider {
static var previews: some View {
ConsoleSearchListSelectionViewDemo()
.frame(width: 320)
}
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
private struct ConsoleSearchListSelectionViewDemo: View {
@State private var selection: Set<String> = []

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,15 +25,15 @@ struct NetworkInspectorTransactionView: View {
NavigationLink(destination: destintionTransactionDetails) {
VStack(alignment: .leading, spacing: 4) {
Text(viewModel.title)
if #available(iOS 15, tvOS 15, *), let size = viewModel.transferSizeViewModel {
if #available(iOS 15, *), let size = viewModel.transferSizeViewModel {
transferSizeView(size: size)
}
}
}
NetworkRequestInfoCell(viewModel: viewModel.requestViewModel)
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
private func transferSizeView(size: NetworkInspectorTransferInfoViewModel) -> some View {
let font = TextHelper().font(style: .init(role: .subheadline, style: .monospacedDigital, width: .condensed))
return (Text(Image(systemName: "arrow.down.circle")) +
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -341,7 +341,7 @@ final class ConsoleSearchViewModel: ObservableObject, ConsoleSearchOperationDele
}
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleSearchResultViewModel: Identifiable {
var id: ConsoleSearchResultKey { ConsoleSearchResultKey(id: entity.objectID) }
let entity: NSManagedObject
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@ import Pulse
import CoreData
import Combine

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
protocol ConsoleSearchOperationDelegate: AnyObject {
func searchOperation(_ operation: ConsoleSearchOperation, didAddResults results: [ConsoleSearchResultViewModel])
func searchOperationDidFinish(_ operation: ConsoleSearchOperation, hasMore: Bool)
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
final class ConsoleSearchOperation {
private let parameters: ConsoleSearchParameters
private var entities: [NSManagedObject]
Expand Down Expand Up @@ -257,7 +257,7 @@ struct ConsoleSearchMatch {
static let limit = 1000
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
final class ConsoleSearchService {
private let cache = NSCache<NSManagedObjectID, CachedString>()

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import Pulse
import CoreData
import Combine

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleSearchSuggestionsViewModel {
let searches: [ConsoleSearchSuggestion]
let filters: [ConsoleSearchSuggestion]
Expand Down Expand Up @@ -37,7 +37,7 @@ struct ConsoleSearchSuggestionsContext {
}
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
final class ConsoleNetworkSearchSuggestionsService {
let recents: ConsoleSearchRecentSearchesStore
let mode: ConsoleMode
Expand Down Expand Up @@ -143,7 +143,7 @@ final class ConsoleNetworkSearchSuggestionsService {
}
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleSearchSuggestion: Identifiable {
let id = UUID()
let text: AttributedString
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import Pulse
import CoreData
import Combine

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleSearchResultView: View {
let viewModel: ConsoleSearchResultViewModel
var limit: Int = 4
Expand Down Expand Up @@ -149,7 +149,7 @@ struct ConsoleSearchResultView: View {
}
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleSearchResultDetailsView: View {
let viewModel: ConsoleSearchResultViewModel

Expand All @@ -164,7 +164,7 @@ struct ConsoleSearchResultDetailsView: View {
}

#if os(iOS)
@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct PlainListGroupSeparator: View {
var body: some View {
Rectangle().foregroundColor(.clear) // DIY separator
Expand All @@ -176,7 +176,7 @@ struct PlainListGroupSeparator: View {
}
#endif

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct PlainListSectionHeader<Content: View>: View {
var title: String?
@ViewBuilder let content: () -> Content
Expand Down Expand Up @@ -206,14 +206,14 @@ struct PlainListSectionHeader<Content: View>: View {
}
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
extension PlainListSectionHeader where Content == Text {
init(title: String) {
self.init(title: title, content: { Text(title) })
}
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct PlainListExpandableSectionHeader<Destination: View>: View {
let title: String
let count: Int
Expand Down Expand Up @@ -242,7 +242,7 @@ struct PlainListExpandableSectionHeader<Destination: View>: View {
}
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct PlainListSeeAllView: View {
let count: Int

Expand All @@ -255,7 +255,7 @@ struct PlainListSeeAllView: View {
}
}

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct PlainListSectionHeaderSeparator: View {
let title: String

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import Pulse
import CoreData
import Combine

@available(iOS 15, tvOS 15, *)
@available(iOS 15, *)
struct ConsoleSearchSuggestionView: View {
let suggestion: ConsoleSearchSuggestion
let action: () -> Void
Expand Down
2 changes: 1 addition & 1 deletion Sources/PulseUI/Helpers/Formatters.swift
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ enum ConsoleFormatter {
// MARK: Individual Components

static func time(for date: Date) -> String {
if #available(iOS 15, tvOS 15, *) {
if #available(iOS 15, *) {
return ConsoleMessageCell.timeFormatter.string(from: date)
} else {
return ""
Expand Down
Loading

0 comments on commit da0aa33

Please sign in to comment.