diff --git a/.swiftlint.yml b/.swiftlint.yml index 07eab79cb..41195fd7a 100644 --- a/.swiftlint.yml +++ b/.swiftlint.yml @@ -1,21 +1,24 @@ disabled_rules: - function_parameter_count - - line_length - - identifier_name - - type_name - function_body_length - type_body_length - force_try - force_cast - - trailing_whitespace + - cyclomatic_complexity + - identifier_name + - type_name + - line_length + - file_length + - large_tuple + - nesting included: - Classes - FreetimeTests + - Local\ Pods excluded: - Pods - - Local Pods - Playgrounds - - Sample + - Local\ Pods/SwipeCellKit reporter: "xcode" \ No newline at end of file diff --git a/Classes/Bookmark/BookmarkCell.swift b/Classes/Bookmark/BookmarkCell.swift index 17eb4c1a2..b3cbcd2c2 100644 --- a/Classes/Bookmark/BookmarkCell.swift +++ b/Classes/Bookmark/BookmarkCell.swift @@ -25,7 +25,7 @@ final class BookmarkCell: SwipeSelectableCell { override init(frame: CGRect) { super.init(frame: frame) - + backgroundColor = .white contentView.clipsToBounds = true @@ -84,14 +84,14 @@ final class BookmarkCell: SwipeSelectableCell { string: "\(viewModel.bookmark.owner)/\(viewModel.bookmark.name)", attributes: [ .font: Styles.Text.secondaryBold.preferredFont, - .foregroundColor: Styles.Colors.Gray.light.color, + .foregroundColor: Styles.Colors.Gray.light.color ] ) detailString.append(NSAttributedString( string: " #\(viewModel.bookmark.number)", attributes: [ .font: Styles.Text.secondary.preferredFont, - .foregroundColor: Styles.Colors.Gray.light.color, + .foregroundColor: Styles.Colors.Gray.light.color ] )) detailLabel.attributedText = detailString diff --git a/Classes/Bookmark/BookmarkNavigationController.swift b/Classes/Bookmark/BookmarkNavigationController.swift index 2e9ac717b..7780b3867 100644 --- a/Classes/Bookmark/BookmarkNavigationController.swift +++ b/Classes/Bookmark/BookmarkNavigationController.swift @@ -23,19 +23,19 @@ final class BookmarkNavigationController { } // MARK: Public API - + var navigationItem: UIBarButtonItem { let item = UIBarButtonItem() configureNavigationItem(item) return item } - + func configureNavigationItem(_ item: UIBarButtonItem) { - + let accessibilityLabel: String let imageName: String let selector: Selector - + if store.contains(model) { imageName = "nav-bookmark-selected" accessibilityLabel = Constants.Strings.removeBookmark @@ -45,7 +45,7 @@ final class BookmarkNavigationController { accessibilityLabel = Constants.Strings.bookmark selector = #selector(BookmarkNavigationController.add(sender:)) } - + item.accessibilityLabel = accessibilityLabel item.image = UIImage(named: imageName)?.withRenderingMode(.alwaysTemplate) item.target = self @@ -54,7 +54,7 @@ final class BookmarkNavigationController { item.width = 0 item.imageInsets = BookmarkNavigationController.iconImageInset } - + //for timeframe between viewDidLoad() and bookmark info is loaded static var disabledNavigationItem: UIBarButtonItem { let item = UIBarButtonItem() @@ -63,20 +63,20 @@ final class BookmarkNavigationController { item.imageInsets = BookmarkNavigationController.iconImageInset return item } - + // MARK: Private API - + @objc func add(sender: UIBarButtonItem) { Haptic.triggerSelection() sender.action = #selector(BookmarkNavigationController.remove(sender:)) sender.image = UIImage(named: "nav-bookmark-selected")?.withRenderingMode(.alwaysTemplate) store.add(model) } - + @objc func remove(sender: UIBarButtonItem) { sender.action = #selector(BookmarkNavigationController.add(sender:)) sender.image = UIImage(named: "nav-bookmark")?.withRenderingMode(.alwaysTemplate) store.remove(model) } - + } diff --git a/Classes/Bookmark/BookmarkViewController.swift b/Classes/Bookmark/BookmarkViewController.swift index 053142462..bf30afa92 100644 --- a/Classes/Bookmark/BookmarkViewController.swift +++ b/Classes/Bookmark/BookmarkViewController.swift @@ -98,12 +98,11 @@ TabNavRootViewControllerType { collectionView.collectionViewLayout.invalidateForOrientationChange() } } - + override func viewWillDisappear(_ animated: Bool) { searchBar.resignFirstResponder() } - private func update(animated: Bool) { adapter.performUpdates(animated: animated) } diff --git a/Classes/Image Upload/ImageUploadTableViewController.swift b/Classes/Image Upload/ImageUploadTableViewController.swift index dddbc89bb..61ce7416d 100755 --- a/Classes/Image Upload/ImageUploadTableViewController.swift +++ b/Classes/Image Upload/ImageUploadTableViewController.swift @@ -50,14 +50,13 @@ class ImageUploadTableViewController: UITableViewController { return viewController } - + override func viewDidLoad() { super.viewDidLoad() // Set the preview image previewImageView.image = image - // Set the right button item to spinning until we have compression info setRightBarItemSpinning() @@ -76,7 +75,7 @@ class ImageUploadTableViewController: UITableViewController { ] ) titleTextField.delegate = self - + // Compress and encode the image in the background to speed up the upload process image.compressAndEncode { [weak self] result in switch result { @@ -159,18 +158,18 @@ class ImageUploadTableViewController: UITableViewController { client.canUploadImage { [weak self] error in // Ensure that we do have enough tokens, otherwise remove the upload button if let error = error as? ImgurClient.ImgurError { - + switch error { case .endpointError(let response): Squawk.showError(message: response) - + case .rateLimitExceeded: Squawk.showError(message: NSLocalizedString("Rate Limit reached, cannot upload!", comment: "")) - + default: Squawk.showGenericError() } - + self?.navigationItem.rightBarButtonItem = nil return } @@ -201,7 +200,7 @@ class ImageUploadTableViewController: UITableViewController { } } } - + @IBAction func didPressPreviewImage() { let previewViewController = NYTPhotosViewController(photos: [IssueCommentPhoto(image: image, data: nil)]) present(previewViewController, animated: trueUnlessReduceMotionEnabled) diff --git a/Classes/Image Upload/ImgurClient.swift b/Classes/Image Upload/ImgurClient.swift index a9102c63a..e844b66f7 100644 --- a/Classes/Image Upload/ImgurClient.swift +++ b/Classes/Image Upload/ImgurClient.swift @@ -14,13 +14,13 @@ final class ImgurClient { enum ImgurError: Error { // missingLink: - Received a valid response, but no link was available in the payload case missingLink - + // endpointError: - We got an error back from Imgur, where the parameter is their response case endpointError(String) - + // malformedResponse: - We got a response back from Imgur, but it did not contain values we expected case malformedResponse - + // rateLimitExceeded: - We are too close to the Imgur rate limit, so no images are being permitted case rateLimitExceeded } @@ -56,7 +56,7 @@ final class ImgurClient { completion(ImgurError.malformedResponse) return } - + if let error = data["error"] as? String { completion(ImgurError.endpointError(error)) return @@ -73,7 +73,7 @@ final class ImgurClient { completion(ImgurError.rateLimitExceeded) return } - + completion(nil) } } diff --git a/Classes/Issues/AddCommentClient.swift b/Classes/Issues/AddCommentClient.swift index 4df82244d..97e073490 100644 --- a/Classes/Issues/AddCommentClient.swift +++ b/Classes/Issues/AddCommentClient.swift @@ -47,7 +47,7 @@ final class AddCommentClient { let mutation = AddCommentMutation(subject_id: subjectId, body: bodyWithSignature) client.client.mutate(mutation, result: { data in data.addComment?.commentEdge.node - }) { result in + }, completion: { result in switch result { case .success(let commentNode): let fragments = commentNode.fragments @@ -67,7 +67,7 @@ final class AddCommentClient { } Squawk.show(error: error) } - } + }) } } diff --git a/Classes/Issues/Assignees/IssueAssigneeAvatarCell.swift b/Classes/Issues/Assignees/IssueAssigneeAvatarCell.swift index b60eb91d9..aec4f13d3 100644 --- a/Classes/Issues/Assignees/IssueAssigneeAvatarCell.swift +++ b/Classes/Issues/Assignees/IssueAssigneeAvatarCell.swift @@ -22,7 +22,7 @@ final class IssueAssigneeAvatarCell: UICollectionViewCell { imageView.layer.borderWidth = 1.0 / UIScreen.main.scale imageView.clipsToBounds = true imageView.accessibilityIgnoresInvertColors = true - + contentView.addSubview(imageView) } diff --git a/Classes/Issues/Assignees/IssueAssigneeUserCell.swift b/Classes/Issues/Assignees/IssueAssigneeUserCell.swift index 1e8ac9a6f..5c28eba02 100644 --- a/Classes/Issues/Assignees/IssueAssigneeUserCell.swift +++ b/Classes/Issues/Assignees/IssueAssigneeUserCell.swift @@ -25,7 +25,7 @@ final class IssueAssigneeUserCell: UICollectionViewCell, ListBindable { imageView.layer.borderWidth = 1.0 / UIScreen.main.scale imageView.clipsToBounds = true imageView.accessibilityIgnoresInvertColors = true - + contentView.addSubview(imageView) imageView.snp.makeConstraints { make in make.centerY.equalToSuperview() diff --git a/Classes/Issues/Branches/IssueBranchesSectionController.swift b/Classes/Issues/Branches/IssueBranchesSectionController.swift index b49649988..be70c60f8 100644 --- a/Classes/Issues/Branches/IssueBranchesSectionController.swift +++ b/Classes/Issues/Branches/IssueBranchesSectionController.swift @@ -10,19 +10,19 @@ import UIKit import IGListKit final class IssueTargetBranchSectionController: ListSectionController { - + var object: IssueTargetBranchModel? - + override func didUpdate(to object: Any) { guard let object = object as? IssueTargetBranchModel else { return } self.object = object } - + override func sizeForItem(at index: Int) -> CGSize { guard let width = collectionContext?.insetContainerSize.width else { fatalError("Collection context must be set") } return CGSize(width: width, height: self.object?.targetBranchText.viewSize(in: width).height ?? 0) } - + override func cellForItem(at index: Int) -> UICollectionViewCell { guard let object = self.object, let cell = collectionContext?.dequeueReusableCell(of: IssueTargetBranchCell.self, for: self, at: index) as? IssueTargetBranchCell diff --git a/Classes/Issues/Branches/IssueTargetBranchCell.swift b/Classes/Issues/Branches/IssueTargetBranchCell.swift index 5c0ce1c6d..23d37a5cc 100644 --- a/Classes/Issues/Branches/IssueTargetBranchCell.swift +++ b/Classes/Issues/Branches/IssueTargetBranchCell.swift @@ -10,8 +10,7 @@ import UIKit import SnapKit final class IssueTargetBranchCell: StyledTextViewCell { - + static let inset = UIEdgeInsets.zero - -} +} diff --git a/Classes/Issues/Branches/IssueTargetBranchModel.swift b/Classes/Issues/Branches/IssueTargetBranchModel.swift index 6e00b75aa..da2aa6865 100644 --- a/Classes/Issues/Branches/IssueTargetBranchModel.swift +++ b/Classes/Issues/Branches/IssueTargetBranchModel.swift @@ -11,10 +11,9 @@ import IGListKit import StyledTextKit final class IssueTargetBranchModel: ListDiffable { - + let targetBranchText: StyledTextRenderer - init(branch: String, width: CGFloat) { let builder = StyledTextBuilder(styledText: StyledText( style: Styles.Text.secondary.with(foreground: Styles.Colors.Gray.medium.color) @@ -29,19 +28,19 @@ final class IssueTargetBranchModel: ListDiffable { style: Styles.Text.secondaryCode.with(foreground: Styles.Colors.Gray.dark.color) )) .save() - + self.targetBranchText = StyledTextRenderer( string: builder.build(), contentSizeCategory: .small ).warm(width: width) } - + // MARK: ListDiffable - + func diffIdentifier() -> NSObjectProtocol { return targetBranchText.diffIdentifier() } - + func isEqual(toDiffableObject object: ListDiffable?) -> Bool { if self === object { return true } guard let object = object as? IssueTargetBranchModel else { return false } diff --git a/Classes/Issues/Comments/Details/IssueCommentDetailCell.swift b/Classes/Issues/Comments/Details/IssueCommentDetailCell.swift index e0b1b38e1..1781da415 100644 --- a/Classes/Issues/Comments/Details/IssueCommentDetailCell.swift +++ b/Classes/Issues/Comments/Details/IssueCommentDetailCell.swift @@ -33,7 +33,7 @@ final class IssueCommentDetailCell: IssueCommentBaseCell, ListBindable { imageView.configureForAvatar() imageView.isUserInteractionEnabled = true imageView.accessibilityIgnoresInvertColors = true - + imageView.addGestureRecognizer(UITapGestureRecognizer( target: self, action: #selector(IssueCommentDetailCell.onTapAvatar)) diff --git a/Classes/Issues/Comments/Images/IssueCommentImageCell.swift b/Classes/Issues/Comments/Images/IssueCommentImageCell.swift index 92b0bc948..91beac95f 100644 --- a/Classes/Issues/Comments/Images/IssueCommentImageCell.swift +++ b/Classes/Issues/Comments/Images/IssueCommentImageCell.swift @@ -34,7 +34,7 @@ final class IssueCommentImageCell: IssueCommentBaseCell, ListBindable { imageView.contentMode = .scaleAspectFit imageView.accessibilityIgnoresInvertColors = true - + contentView.addSubview(imageView) spinner.hidesWhenStopped = true diff --git a/Classes/Issues/Comments/IssueCommentBaseCell.swift b/Classes/Issues/Comments/IssueCommentBaseCell.swift index 638d47117..1f3eaec1d 100644 --- a/Classes/Issues/Comments/IssueCommentBaseCell.swift +++ b/Classes/Issues/Comments/IssueCommentBaseCell.swift @@ -126,4 +126,3 @@ class IssueCommentBaseCell: UICollectionViewCell, UIGestureRecognizerDelegate { } } - diff --git a/Classes/Issues/Comments/IssueCommentSectionController.swift b/Classes/Issues/Comments/IssueCommentSectionController.swift index fe2751040..64af6899e 100644 --- a/Classes/Issues/Comments/IssueCommentSectionController.swift +++ b/Classes/Issues/Comments/IssueCommentSectionController.swift @@ -20,8 +20,7 @@ protocol IssueCommentSectionControllerDelegate: class { ) } -final class IssueCommentSectionController: - ListBindingSectionController, +final class IssueCommentSectionController: ListBindingSectionController, ListBindingSectionControllerDataSource, ListBindingSectionControllerSelectionDelegate, IssueCommentDetailCellDelegate, @@ -373,7 +372,6 @@ final class IssueCommentSectionController: let viewModel = viewModel as? ListDiffable else { fatalError("Collection context must be set") } - // TODO need to update PR tail model? if viewModel === tailModel { guard let cell = context.dequeueReusableCell(of: IssueReviewEmptyTailCell.self, for: self, at: index) as? UICollectionViewCell & ListBindable else { fatalError("Cell not bindable") } @@ -405,7 +403,7 @@ final class IssueCommentSectionController: } else if let cell = cell as? IssueCommentReactionCell { cell.delegate = self } - + if let object = self.object, !object.asReviewComment, let cell = cell as? IssueCommentBaseCell { @@ -439,15 +437,15 @@ final class IssueCommentSectionController: } uncollapse() } - + // MARK: IssueCommentDoubleTapDelegate - + func didDoubleTap(cell: IssueCommentBaseCell) { guard let reaction = ReactionContent.defaultReaction else { return } guard let reactions = reactionMutation ?? self.object?.reactions, !reactions.viewerDidReact(reaction: reaction) else { return } - + react( cell: collectionContext?.cellForItem(at: numberOfItems() - 1, sectionController: self) as? IssueCommentReactionCell, content: reaction, @@ -558,11 +556,9 @@ final class IssueCommentSectionController: else { return } var index = -1 - for (i, model) in viewModels.reversed().enumerated() { - if model is IssueCommentReactionViewModel { - index = viewModels.count - 1 - i - break - } + for (i, model) in viewModels.reversed().enumerated() where model is IssueCommentReactionViewModel { + index = viewModels.count - 1 - i + break } guard index >= 0 else { return } diff --git a/Classes/Issues/Comments/Markdown/CMarkParsing.swift b/Classes/Issues/Comments/Markdown/CMarkParsing.swift index 2a25a25a1..b755f518f 100644 --- a/Classes/Issues/Comments/Markdown/CMarkParsing.swift +++ b/Classes/Issues/Comments/Markdown/CMarkParsing.swift @@ -408,4 +408,3 @@ func MarkdownModels( return models } } - diff --git a/Classes/Issues/Comments/Markdown/CodeBlockModel.swift b/Classes/Issues/Comments/Markdown/CodeBlockModel.swift index e8e0bfd88..51d881f32 100644 --- a/Classes/Issues/Comments/Markdown/CodeBlockModel.swift +++ b/Classes/Issues/Comments/Markdown/CodeBlockModel.swift @@ -26,7 +26,7 @@ func CodeBlockElement( string: trimmedText, attributes: [ .foregroundColor: Styles.Colors.Gray.dark.color, - .font: Styles.Text.code.font(contentSizeCategory:contentSizeCategory) + .font: Styles.Text.code.font(contentSizeCategory: contentSizeCategory) ] ) } diff --git a/Classes/Issues/Comments/Markdown/MarkdownAttribute.swift b/Classes/Issues/Comments/Markdown/MarkdownAttribute.swift index 484a1167a..9a6999c0f 100644 --- a/Classes/Issues/Comments/Markdown/MarkdownAttribute.swift +++ b/Classes/Issues/Comments/Markdown/MarkdownAttribute.swift @@ -30,6 +30,6 @@ enum MarkdownAttribute { details, label, commit, - checkbox, + checkbox ]) } diff --git a/Classes/Issues/Comments/Markdown/String+DetectShortlink.swift b/Classes/Issues/Comments/Markdown/String+DetectShortlink.swift index 61b318161..a9d6990c4 100644 --- a/Classes/Issues/Comments/Markdown/String+DetectShortlink.swift +++ b/Classes/Issues/Comments/Markdown/String+DetectShortlink.swift @@ -59,7 +59,7 @@ extension String { ) ]) .restore() - + //if match's trailing character is not a number, include that if let right = substring(with: NSRange(location: match.range.right - 1, length: 1)) { if Int(right) == nil { @@ -76,4 +76,3 @@ extension String { } } } - diff --git a/Classes/Issues/Comments/Markdown/StyledTextBuilder+NewBase.swift b/Classes/Issues/Comments/Markdown/StyledTextBuilder+NewBase.swift index 3e46e3909..5b239d3ee 100644 --- a/Classes/Issues/Comments/Markdown/StyledTextBuilder+NewBase.swift +++ b/Classes/Issues/Comments/Markdown/StyledTextBuilder+NewBase.swift @@ -17,7 +17,7 @@ extension StyledTextBuilder { let attributes: [NSAttributedStringKey: Any] = [ .foregroundColor: Styles.Colors.Gray.dark.color, .paragraphStyle: paragraphStyle, - .backgroundColor: UIColor.white, + .backgroundColor: UIColor.white ] let style = isRoot ? Styles.Text.rootBody diff --git a/Classes/Issues/Comments/Markdown/ViewMarkdownViewController.swift b/Classes/Issues/Comments/Markdown/ViewMarkdownViewController.swift index 10efbd322..e883ae0d3 100644 --- a/Classes/Issues/Comments/Markdown/ViewMarkdownViewController.swift +++ b/Classes/Issues/Comments/Markdown/ViewMarkdownViewController.swift @@ -18,11 +18,11 @@ final class ViewMarkdownViewController: UIViewController { super.init(nibName: nil, bundle: nil) title = NSLocalizedString("Markdown", comment: "") } - + required init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } - + override func viewDidLoad() { super.viewDidLoad() diff --git a/Classes/Issues/Comments/Reactions/Defaults+Reaction.swift b/Classes/Issues/Comments/Reactions/Defaults+Reaction.swift index d350fc705..d2e0c4881 100644 --- a/Classes/Issues/Comments/Reactions/Defaults+Reaction.swift +++ b/Classes/Issues/Comments/Reactions/Defaults+Reaction.swift @@ -33,4 +33,3 @@ extension UserDefaults { } } - diff --git a/Classes/Issues/Comments/Reactions/IssueLocalReaction.swift b/Classes/Issues/Comments/Reactions/IssueLocalReaction.swift index 45b5cea5b..649cb2d1c 100644 --- a/Classes/Issues/Comments/Reactions/IssueLocalReaction.swift +++ b/Classes/Issues/Comments/Reactions/IssueLocalReaction.swift @@ -36,7 +36,7 @@ func IssueLocalReaction( // decrementing a reaction (count > 1) let operation: IssueReactionOperation - var prev: (index: Int, model: ReactionViewModel)? = nil + var prev: (index: Int, model: ReactionViewModel)? for (i, model) in base.models.enumerated() where model.content == content { prev = (i, model) break diff --git a/Classes/Issues/Comments/Reactions/ReactionContent+ReactionType.swift b/Classes/Issues/Comments/Reactions/ReactionContent+ReactionType.swift index 45f8af4b5..da3a80235 100644 --- a/Classes/Issues/Comments/Reactions/ReactionContent+ReactionType.swift +++ b/Classes/Issues/Comments/Reactions/ReactionContent+ReactionType.swift @@ -41,4 +41,3 @@ extension String { } } } - diff --git a/Classes/Issues/Commit/IssueCommitCell.swift b/Classes/Issues/Commit/IssueCommitCell.swift index 9f32fee3a..153a7b7a5 100644 --- a/Classes/Issues/Commit/IssueCommitCell.swift +++ b/Classes/Issues/Commit/IssueCommitCell.swift @@ -48,7 +48,7 @@ final class IssueCommitCell: UICollectionViewCell { action: #selector(IssueCommitCell.onAvatar)) ) avatarImageView.accessibilityIgnoresInvertColors = true - + contentView.addSubview(avatarImageView) avatarImageView.snp.makeConstraints { make in make.centerY.equalToSuperview() diff --git a/Classes/Issues/EditComment/EditCommentViewController.swift b/Classes/Issues/EditComment/EditCommentViewController.swift index 1f5ff0d4f..133716a3c 100644 --- a/Classes/Issues/EditComment/EditCommentViewController.swift +++ b/Classes/Issues/EditComment/EditCommentViewController.swift @@ -123,10 +123,10 @@ MessageTextViewListener { supportsImageUpload: true, showSendButton: false ) - + textActionsController.configure(client: client, textView: textView, actions: actions) textActionsController.viewController = self - + textView.inputAccessoryView = actions } diff --git a/Classes/Issues/Files/IssueViewFilesCell.swift b/Classes/Issues/Files/IssueViewFilesCell.swift index c40271a36..599712f97 100644 --- a/Classes/Issues/Files/IssueViewFilesCell.swift +++ b/Classes/Issues/Files/IssueViewFilesCell.swift @@ -66,7 +66,7 @@ final class IssueViewFilesCell: UICollectionViewCell { )) } label.attributedText = attributedText - + accessibilityLabel = NSLocalizedString( "View Files", comment: "The accessibility label for the View Files button in a pull request.") diff --git a/Classes/Issues/GithubClient+Issues.swift b/Classes/Issues/GithubClient+Issues.swift index 3c6b67a69..48d0c260a 100644 --- a/Classes/Issues/GithubClient+Issues.swift +++ b/Classes/Issues/GithubClient+Issues.swift @@ -57,7 +57,7 @@ extension GithubClient { let cache = self.cache let contentSizeCategory = UIContentSizeCategory.preferred - client.query(query, result: { $0.repository }) { result in + client.query(query, result: { $0.repository }, completion: { result in switch result { case .failure(let error): completion(.error(error)) @@ -124,7 +124,7 @@ extension GithubClient { } else { milestoneModel = nil } - + let targetBranchModel: IssueTargetBranchModel? if let baseBranchRef = issueType.targetBranch { targetBranchModel = IssueTargetBranchModel( @@ -148,7 +148,6 @@ extension GithubClient { availableMergeTypes.append(.rebase) } - let issueResult = IssueResult( id: issueType.id, pullRequest: issueType.pullRequest, @@ -179,7 +178,7 @@ extension GithubClient { } } } - } + }) } func react( diff --git a/Classes/Issues/Issue+IssueType.swift b/Classes/Issues/Issue+IssueType.swift index c8b5ee5b1..f8c2b6c39 100644 --- a/Classes/Issues/Issue+IssueType.swift +++ b/Classes/Issues/Issue+IssueType.swift @@ -34,7 +34,7 @@ extension IssueOrPullRequestQuery.Data.Repository.IssueOrPullRequest.AsIssue: Is var merged: Bool { return false } - + var targetBranch: String? { return nil } diff --git a/Classes/Issues/IssueManagingContextController.swift b/Classes/Issues/IssueManagingContextController.swift index ddadc475d..d4c1b95a4 100644 --- a/Classes/Issues/IssueManagingContextController.swift +++ b/Classes/Issues/IssueManagingContextController.swift @@ -344,4 +344,3 @@ final class IssueManagingContextController: NSObject, ContextMenuDelegate { func contextMenuDidDismiss(viewController: UIViewController, animated: Bool) {} } - diff --git a/Classes/Issues/IssueTextActionsView.swift b/Classes/Issues/IssueTextActionsView.swift index 6e42f61a0..75d8ae609 100644 --- a/Classes/Issues/IssueTextActionsView.swift +++ b/Classes/Issues/IssueTextActionsView.swift @@ -97,7 +97,7 @@ final class IssueTextActionsView: UIView, UICollectionViewDataSource, UICollecti private let activityIndicator = UIActivityIndicatorView( activityIndicatorStyle: UIActivityIndicatorViewStyle.gray ) - + public var sendButtonEnabled: Bool { get { return sendButton.isEnabled } set { @@ -105,7 +105,7 @@ final class IssueTextActionsView: UIView, UICollectionViewDataSource, UICollecti sendButton.alpha = newValue ? 1 : 0.25 } } - + public var isProcessing: Bool = false { didSet { sendButton.isEnabled = !isProcessing @@ -146,7 +146,7 @@ final class IssueTextActionsView: UIView, UICollectionViewDataSource, UICollecti sendButton.setImage(UIImage(named: "send")?.withRenderingMode(.alwaysTemplate), for: .normal) sendButton.addTarget(self, action: #selector(onSend), for: .touchUpInside) addSubview(sendButton) - + activityIndicator.hidesWhenStopped = true addSubview(activityIndicator) } diff --git a/Classes/Issues/IssuesViewController.swift b/Classes/Issues/IssuesViewController.swift index eb31040c8..2a60c1c83 100644 --- a/Classes/Issues/IssuesViewController.swift +++ b/Classes/Issues/IssuesViewController.swift @@ -24,8 +24,7 @@ extension ListDiffable { } } -final class IssuesViewController: - MessageViewController, +final class IssuesViewController: MessageViewController, ListAdapterDataSource, FeedDelegate, AddCommentListener, @@ -41,7 +40,7 @@ final class IssuesViewController: private let model: IssueDetailsModel private let addCommentClient: AddCommentClient private let textActionsController = TextActionsController() - private var bookmarkNavController: BookmarkNavigationController? = nil + private var bookmarkNavController: BookmarkNavigationController? private var autocompleteController: AutocompleteController! private let manageController: IssueManagingContextController private let threadInset = UIEdgeInsets( @@ -197,7 +196,7 @@ final class IssuesViewController: actions.frame = CGRect(x: 0, y: 0, width: 0, height: 32) messageView.add(contentView: actions) - + //show disabled bookmark button until issue has finished loading navigationItem.rightBarButtonItems = [ moreOptionsItem, BookmarkNavigationController.disabledNavigationItem ] @@ -230,7 +229,7 @@ final class IssuesViewController: feed.collectionView.updateSafeInset(container: view, base: threadInset) } - override func didLayout() { + override func didLayout() { let manageButtonSize = manageController.manageButton.bounds.size manageController.manageButton.frame = CGRect( origin: CGPoint( @@ -402,10 +401,10 @@ final class IssuesViewController: metadata.append(IssueFileChangesModel(changes: changes)) } // END metadata collection - + objects.append(IssueTitleModel(string: current.title)) objects += metadata - + if let targetBranch = current.targetBranch { objects.append(targetBranch) } diff --git a/Classes/Issues/Labeled/IssueLabeledCell.swift b/Classes/Issues/Labeled/IssueLabeledCell.swift index faccec8ad..5940ff06e 100644 --- a/Classes/Issues/Labeled/IssueLabeledCell.swift +++ b/Classes/Issues/Labeled/IssueLabeledCell.swift @@ -17,7 +17,7 @@ final class IssueLabeledCell: StyledTextViewCell { bottom: Styles.Sizes.inlineSpacing, right: 0 ) - + // MARK: Public API func configure(_ model: IssueLabeledModel) { diff --git a/Classes/Issues/Labeled/IssueLabeledSectionController.swift b/Classes/Issues/Labeled/IssueLabeledSectionController.swift index ea9f1c6f2..23a160eba 100644 --- a/Classes/Issues/Labeled/IssueLabeledSectionController.swift +++ b/Classes/Issues/Labeled/IssueLabeledSectionController.swift @@ -12,7 +12,7 @@ import IGListKit final class IssueLabeledSectionController: ListGenericSectionController { private let issueModel: IssueDetailsModel - + init(issueModel: IssueDetailsModel) { self.issueModel = issueModel super.init() diff --git a/Classes/Issues/Labels/IssueLabelsSectionController.swift b/Classes/Issues/Labels/IssueLabelsSectionController.swift index 56581c6c2..b94ab1b8b 100644 --- a/Classes/Issues/Labels/IssueLabelsSectionController.swift +++ b/Classes/Issues/Labels/IssueLabelsSectionController.swift @@ -101,4 +101,3 @@ ListBindingSectionControllerSelectionDelegate { } } - diff --git a/Classes/Issues/Managing/IssueManagingExpansionCell.swift b/Classes/Issues/Managing/IssueManagingExpansionCell.swift index 9a7ccb403..52b64250b 100644 --- a/Classes/Issues/Managing/IssueManagingExpansionCell.swift +++ b/Classes/Issues/Managing/IssueManagingExpansionCell.swift @@ -31,7 +31,7 @@ final class IssueManagingExpansionCell: UICollectionViewCell, ListBindable { backgroundHighlightView.backgroundColor = UIColor(white: 0, alpha: 0.07) backgroundHighlightView.alpha = 0 contentView.addSubview(backgroundHighlightView) - + let tint = Styles.Colors.Blue.medium.color chevron.tintColor = tint @@ -86,7 +86,7 @@ final class IssueManagingExpansionCell: UICollectionViewCell, ListBindable { label.alpha = alpha chevron.alpha = alpha } - + // MARK: Public API func animate(expanded: Bool) { diff --git a/Classes/Issues/Managing/IssueManagingSectionController.swift b/Classes/Issues/Managing/IssueManagingSectionController.swift index 939007324..5d0a28462 100644 --- a/Classes/Issues/Managing/IssueManagingSectionController.swift +++ b/Classes/Issues/Managing/IssueManagingSectionController.swift @@ -201,7 +201,7 @@ ContextMenuDelegate { models += [ Action.labels, Action.milestone, - Action.assignees, + Action.assignees ] if object.pullRequest { models.append(Action.reviewers) @@ -255,7 +255,7 @@ ContextMenuDelegate { viewModel: Any ) { collectionContext?.deselectItem(at: index, sectionController: self, animated: trueUnlessReduceMotionEnabled) - + guard updating == false, let viewModel = viewModel as? ListDiffable, let cell = collectionContext?.cellForItem(at: index, sectionController: self) diff --git a/Classes/Issues/Merge/IssueMergeButtonCell.swift b/Classes/Issues/Merge/IssueMergeButtonCell.swift index e035c0dc9..9391ca1f2 100644 --- a/Classes/Issues/Merge/IssueMergeButtonCell.swift +++ b/Classes/Issues/Merge/IssueMergeButtonCell.swift @@ -51,5 +51,5 @@ final class IssueMergeButtonCell: CardCollectionViewCell, ListBindable { } mergeButton.configure(title: title, enabled: viewModel.enabled, loading: viewModel.loading) } - + } diff --git a/Classes/Issues/Merge/IssueMergeSectionController.swift b/Classes/Issues/Merge/IssueMergeSectionController.swift index 61c27793f..f84a6a6dd 100644 --- a/Classes/Issues/Merge/IssueMergeSectionController.swift +++ b/Classes/Issues/Merge/IssueMergeSectionController.swift @@ -93,7 +93,7 @@ ListBindingSectionControllerSelectionDelegate { if object.contexts.count > 0 { let states = object.contexts.map { $0.state } let (state, stateDescription) = MergeHelper.combinedMergeStatus(for: states) - + viewModels.append(IssueMergeSummaryModel(title: stateDescription, state: state)) } @@ -115,7 +115,7 @@ ListBindingSectionControllerSelectionDelegate { title = NSLocalizedString("Not authorized to merge", comment: "") state = .failure buttonEnabled = false - case .unknown, .__unknown(_): + case .unknown, .__unknown: title = NSLocalizedString("Merge status unknown", comment: "") state = .pending buttonEnabled = false @@ -185,9 +185,9 @@ ListBindingSectionControllerSelectionDelegate { // MARK: MergeButtonDelegate func didSelect(button: MergeButton) { - + viewController?.view.endEditing(true) - + let alert = UIAlertController.configured( title: NSLocalizedString("Confirm merge", comment: ""), message: NSLocalizedString("Are you sure you want to merge this pull request?", comment: ""), diff --git a/Classes/Issues/Merge/IssueMergeSummaryCell.swift b/Classes/Issues/Merge/IssueMergeSummaryCell.swift index 8c04fb55b..3ced85bd0 100644 --- a/Classes/Issues/Merge/IssueMergeSummaryCell.swift +++ b/Classes/Issues/Merge/IssueMergeSummaryCell.swift @@ -74,5 +74,5 @@ final class IssueMergeSummaryCell: CardCollectionViewCell, ListBindable { imageView.image = UIImage(named: iconName)?.withRenderingMode(.alwaysTemplate) accessibilityLabel = .localizedStringWithFormat("%@. (state: %@)", viewModel.title, viewModel.state.description) } - + } diff --git a/Classes/Issues/Merge/MergeButton.swift b/Classes/Issues/Merge/MergeButton.swift index 64723e84e..f2a64bda6 100644 --- a/Classes/Issues/Merge/MergeButton.swift +++ b/Classes/Issues/Merge/MergeButton.swift @@ -73,7 +73,7 @@ final class MergeButton: UIView { required init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } - + override func layoutSubviews() { super.layoutSubviews() gradientLayer.frame = bounds @@ -89,7 +89,7 @@ final class MergeButton: UIView { : Styles.Colors.Gray.light.color) .withAlphaComponent(loading ? 0.2 : 1) alpha = enabled ? 1 : 0.3 - + if enabled && !loading { guard gradientLayer.superlayer == nil else { return } gradientLayer.cornerRadius = layer.cornerRadius @@ -98,14 +98,14 @@ final class MergeButton: UIView { Styles.Colors.Green.medium.color.cgColor ] layer.addSublayer(gradientLayer) - + [mergeLabel, optionIconView, optionBorder, activityView].forEach { bringSubview(toFront: $0) } } else { gradientLayer.removeFromSuperlayer() } - + let titleColor = enabled ? .white : Styles.Colors.Gray.dark.color mergeLabel.textColor = titleColor optionIconView.tintColor = titleColor diff --git a/Classes/Issues/Milestone/IssueMilestoneSectionController.swift b/Classes/Issues/Milestone/IssueMilestoneSectionController.swift index a8af5d369..88052428a 100644 --- a/Classes/Issues/Milestone/IssueMilestoneSectionController.swift +++ b/Classes/Issues/Milestone/IssueMilestoneSectionController.swift @@ -40,4 +40,3 @@ final class IssueMilestoneSectionController: ListGenericSectionController } } - diff --git a/Classes/Labels/LabelsViewController.swift b/Classes/Labels/LabelsViewController.swift index c4fc72be1..71cd1d7ef 100644 --- a/Classes/Labels/LabelsViewController.swift +++ b/Classes/Labels/LabelsViewController.swift @@ -88,7 +88,7 @@ LabelSectionControllerDelegate { override func fetch(page: String?) { client.client.query(request, result: { data in data.repository?.labels?.nodes - }) { [weak self] result in + }, completion: { [weak self] result in switch result { case .success(let nodes): self?.labels = nodes.compactMap { @@ -99,7 +99,7 @@ LabelSectionControllerDelegate { case .failure(let error): Squawk.show(error: error) } - } + }) } // MARK: BaseListViewController2DataSource diff --git a/Classes/Login/LoginSplashViewController.swift b/Classes/Login/LoginSplashViewController.swift index abade6372..209bb1e4d 100644 --- a/Classes/Login/LoginSplashViewController.swift +++ b/Classes/Login/LoginSplashViewController.swift @@ -65,10 +65,10 @@ final class LoginSplashViewController: UIViewController { state = .idle signInButton.layer.cornerRadius = Styles.Sizes.cardCornerRadius } - + override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) - + setupSplashView() } diff --git a/Classes/Login/SplashView/SplashView.swift b/Classes/Login/SplashView/SplashView.swift index b8a17273e..421c377e6 100644 --- a/Classes/Login/SplashView/SplashView.swift +++ b/Classes/Login/SplashView/SplashView.swift @@ -12,40 +12,38 @@ import SnapKit final class SplashView: UIView { // MARK: Private properties - + private var birdImageView: UIImageView! private var branchesImageView: UIImageView! - - + // MARK: Public API - + override init(frame: CGRect) { super.init(frame: frame) - + setupView() } - + required init?(coder aDecoder: NSCoder) { super.init(coder: aDecoder) - + setupView() } - + func configureView() { addBirdAnimation() addBranchesAnimation() } - - + // MARK: Private API - + private func setupView() { branchesImageView = UIImageView(image: UIImage(named: "splash_branches")) addSubview(branchesImageView) branchesImageView.snp.makeConstraints { make in make.top.left.right.bottom.equalToSuperview() } - + birdImageView = UIImageView(image: UIImage(named: "splash")) addSubview(birdImageView) birdImageView.snp.makeConstraints { make in @@ -55,7 +53,7 @@ final class SplashView: UIView { private func addBirdAnimation() { let pulseAnimation = CABasicAnimation(keyPath: "transform.scale") - + pulseAnimation.autoreverses = true pulseAnimation.repeatCount = .infinity pulseAnimation.fromValue = 1.0 @@ -63,19 +61,19 @@ final class SplashView: UIView { pulseAnimation.duration = 2 pulseAnimation.fillMode = kCAFillModeForwards pulseAnimation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut) - + birdImageView.layer.add(pulseAnimation, forKey: "scaling") } - + private func addBranchesAnimation() { let rotateAnimation = CABasicAnimation(keyPath: "transform.rotation") - + rotateAnimation.repeatCount = .infinity rotateAnimation.byValue = 2 * Double.pi rotateAnimation.duration = 120 rotateAnimation.fillMode = kCAFillModeForwards rotateAnimation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear) - + branchesImageView.layer.add(rotateAnimation, forKey: "rotation") } diff --git a/Classes/Milestones/Milestone.swift b/Classes/Milestones/Milestone.swift index 8de8a1597..032ce53dd 100644 --- a/Classes/Milestones/Milestone.swift +++ b/Classes/Milestones/Milestone.swift @@ -45,7 +45,7 @@ final class Milestone: Equatable, ListDiffable { // MARK: Equatable - static func ==(lhs: Milestone, rhs: Milestone) -> Bool { + static func == (lhs: Milestone, rhs: Milestone) -> Bool { if lhs === rhs { return true } return lhs.number == rhs.number && lhs.dueOn == rhs.dueOn diff --git a/Classes/Milestones/MilestoneCell.swift b/Classes/Milestones/MilestoneCell.swift index 4f2956fa9..003284c8c 100644 --- a/Classes/Milestones/MilestoneCell.swift +++ b/Classes/Milestones/MilestoneCell.swift @@ -71,4 +71,3 @@ final class MilestoneCell2: SelectableCell { } } - diff --git a/Classes/Milestones/MilestoneSectionController.swift b/Classes/Milestones/MilestoneSectionController.swift index 76625b5b2..35daf3ba6 100644 --- a/Classes/Milestones/MilestoneSectionController.swift +++ b/Classes/Milestones/MilestoneSectionController.swift @@ -41,4 +41,3 @@ final class MilestoneSectionController: ListSwiftSectionController Bool { + static func == (lhs: RepositoryLabel, rhs: RepositoryLabel) -> Bool { if lhs === rhs { return true } return lhs.color == rhs.color && lhs.name == rhs.name diff --git a/Classes/New Issue/NewIssueTableViewController.swift b/Classes/New Issue/NewIssueTableViewController.swift index d6c4f5944..343f903e3 100644 --- a/Classes/New Issue/NewIssueTableViewController.swift +++ b/Classes/New Issue/NewIssueTableViewController.swift @@ -121,7 +121,7 @@ final class NewIssueTableViewController: UITableViewController, UITextFieldDeleg // MARK: Accessibility override func accessibilityPerformMagicTap() -> Bool { - guard let _ = titleText else { return false } + guard titleText != nil else { return false } onSend() return true } @@ -198,10 +198,10 @@ final class NewIssueTableViewController: UITableViewController, UITextFieldDeleg supportsImageUpload: true, showSendButton: false ) - + textActionsController.configure(client: client, textView: bodyField, actions: actions) textActionsController.viewController = self - + bodyField.inputAccessoryView = actions } diff --git a/Classes/Notifications/CreateNotificationTitle.swift b/Classes/Notifications/CreateNotificationTitle.swift index 548f8caff..023019746 100644 --- a/Classes/Notifications/CreateNotificationTitle.swift +++ b/Classes/Notifications/CreateNotificationTitle.swift @@ -10,7 +10,6 @@ import Foundation import StyledTextKit func CreateNotification(title: String, width: CGFloat, contentSizeCategory: UIContentSizeCategory) -> StyledTextRenderer { - // TODO add owner/repo # let builder = StyledTextBuilder(styledText: StyledText( text: title, style: Styles.Text.body diff --git a/Classes/Notifications/NoNewNotificationsCell.swift b/Classes/Notifications/NoNewNotificationsCell.swift index c7f741333..402ea51c4 100644 --- a/Classes/Notifications/NoNewNotificationsCell.swift +++ b/Classes/Notifications/NoNewNotificationsCell.swift @@ -60,8 +60,7 @@ final class NoNewNotificationsCell: UICollectionViewCell { contentView.isAccessibilityElement = true contentView.accessibilityLabel = NSLocalizedString("You have no new notifications!", comment: "Inbox Zero Accessibility Label") - - + //configure reviewGitHubAcess button reviewGitHubAccessButton.setTitle(Constants.Strings.reviewGitHubAccess, for: .normal) reviewGitHubAccessButton.isAccessibilityElement = false @@ -80,7 +79,7 @@ final class NoNewNotificationsCell: UICollectionViewCell { make.height.equalTo(buttonHeight) make.bottom.equalTo(contentView.snp.bottom).offset(-Styles.Sizes.tableSectionSpacing) } - + } required init?(coder aDecoder: NSCoder) { @@ -151,9 +150,9 @@ final class NoNewNotificationsCell: UICollectionViewCell { shadow.add(shadowScale, forKey: "nonewnotificationscell.shadow") } - + @objc func reviewGitHubAccessButtonTapped() { reviewGitHubAccessDelegate?.didTapReviewAccess(cell: self) } - + } diff --git a/Classes/Notifications/NoNewNotificationsSectionController.swift b/Classes/Notifications/NoNewNotificationsSectionController.swift index 006104ab1..a8a25b6c4 100644 --- a/Classes/Notifications/NoNewNotificationsSectionController.swift +++ b/Classes/Notifications/NoNewNotificationsSectionController.swift @@ -39,7 +39,7 @@ NoNewNotificationsCellReviewAccessDelegate { }, configure: { [weak self] in guard let strongSelf = self else { return } - // TODO accessing the value seems to be required for this to compile + // accessing the value seems to be required for this to compile print($1.value) $0.configure( emoji: latest.emoji, diff --git a/Classes/Notifications/NotificationModelController.swift b/Classes/Notifications/NotificationModelController.swift index d21143525..02cd6753e 100644 --- a/Classes/Notifications/NotificationModelController.swift +++ b/Classes/Notifications/NotificationModelController.swift @@ -76,7 +76,7 @@ final class NotificationModelController { switch result { case .success(let response): badge.updateLocalNotificationCache(notifications: response.data, showAlert: false) - + CreateNotificationViewModels( width: width, contentSizeCategory: contentSizeCategory, diff --git a/Classes/Notifications/NotificationsViewController.swift b/Classes/Notifications/NotificationsViewController.swift index 19989310c..d6212f545 100644 --- a/Classes/Notifications/NotificationsViewController.swift +++ b/Classes/Notifications/NotificationsViewController.swift @@ -33,7 +33,7 @@ BaseListViewController2EmptyDataSource { emptyErrorMessage: NSLocalizedString("Cannot load your inbox.", comment: ""), backgroundThreshold: 5 * 60 ) - + self.dataSource = self self.emptyDataSource = self @@ -53,7 +53,7 @@ BaseListViewController2EmptyDataSource { makeBackBarItemEmpty() resetRightBarItem() - + switch inboxType { case .unread: let item = UIBarButtonItem( @@ -288,15 +288,15 @@ BaseListViewController2EmptyDataSource { self.update(animated: trueUnlessReduceMotionEnabled) updateUnreadState() } - + // MARK: TabNavRootViewControllerType - + func didSingleTapTab() { feed.collectionView.scrollToTop(animated: true) } - + func didDoubleTapTab() { didSingleTapTab() } - + } diff --git a/Classes/People/PeopleCell.swift b/Classes/People/PeopleCell.swift index f5da04863..a90be632e 100644 --- a/Classes/People/PeopleCell.swift +++ b/Classes/People/PeopleCell.swift @@ -21,7 +21,7 @@ final class PeopleCell: SelectableCell { backgroundColor = nil contentView.backgroundColor = nil - + contentView.addSubview(avatarImageView) contentView.addSubview(usernameLabel) contentView.addSubview(checkmarkImageView) diff --git a/Classes/People/PeopleViewController.swift b/Classes/People/PeopleViewController.swift index 70c77c8f8..18ccb9a40 100644 --- a/Classes/People/PeopleViewController.swift +++ b/Classes/People/PeopleViewController.swift @@ -99,7 +99,7 @@ PeopleSectionControllerDelegate { } } } - + static func sortUsers(users: [V3User], currentUser: String?) -> [V3User] { return users.sorted { if $0.login == currentUser { diff --git a/Classes/PullRequestReviews/GithubClient+PullRequestReviewComments.swift b/Classes/PullRequestReviews/GithubClient+PullRequestReviewComments.swift index ccd714811..23ccced6a 100644 --- a/Classes/PullRequestReviews/GithubClient+PullRequestReviewComments.swift +++ b/Classes/PullRequestReviews/GithubClient+PullRequestReviewComments.swift @@ -27,7 +27,7 @@ extension GithubClient { repo: String, number: Int, width: CGFloat, - completion: @escaping (Result<[ListDiffable]>) -> () + completion: @escaping (Result<[ListDiffable]>) -> Void ) { let viewerUsername = userSession?.username let contentSizeCategory = UIContentSizeCategory.preferred @@ -115,7 +115,7 @@ extension GithubClient { repo: String, number: Int, width: CGFloat, - completion: @escaping (Result) -> () + completion: @escaping (Result) -> Void ) { let viewer = userSession?.username let contentSizeCategory = UIContentSizeCategory.preferred diff --git a/Classes/Repository/GitHubClient+Repository.swift b/Classes/Repository/GitHubClient+Repository.swift index f059aab05..dbc433b0c 100644 --- a/Classes/Repository/GitHubClient+Repository.swift +++ b/Classes/Repository/GitHubClient+Repository.swift @@ -19,7 +19,7 @@ extension GithubClient { ) { let query = RepoFilesQuery(owner: owner, name: repo, branchAndPath: "\(branch):\(path)") - client.query(query, result: { $0.repository?.object?.asTree?.entries }) { result in + client.query(query, result: { $0.repository?.object?.asTree?.entries }, completion: { result in switch result { case .failure(let error): completion(.error(error)) @@ -43,7 +43,7 @@ extension GithubClient { blobs.sort { $0.name < $1.name } completion(.success(trees + blobs)) } - } + }) } // different result type so handling non-text is treated differently @@ -61,7 +61,7 @@ extension GithubClient { completion: @escaping (FileResult) -> Void ) { let query = RepoFileQuery(owner: owner, name: repo, branchAndPath: "\(branch):\(path)") - client.query(query, result: { $0.repository?.object?.asBlob }) { result in + client.query(query, result: { $0.repository?.object?.asBlob }, completion: { result in switch result { case .failure(let error): completion(.error(error)) @@ -72,7 +72,7 @@ extension GithubClient { completion(.nonUTF8) } } - } + }) } } diff --git a/Classes/Repository/RepositoryBranches/GitHubClient+RepositoryBranches.swift b/Classes/Repository/RepositoryBranches/GitHubClient+RepositoryBranches.swift index 38d1d6679..e66989def 100644 --- a/Classes/Repository/RepositoryBranches/GitHubClient+RepositoryBranches.swift +++ b/Classes/Repository/RepositoryBranches/GitHubClient+RepositoryBranches.swift @@ -9,18 +9,18 @@ import GitHubAPI extension GithubClient { - + func fetchRepositoryBranches(owner: String, repo: String, - completion: @escaping (Result<([String])>)->Void + completion: @escaping (Result<([String])>) -> Void ) { let query = FetchRepositoryBranchesQuery(owner: owner, name: repo) - client.query(query, result: { $0.repository }) { result in - + client.query(query, result: { $0.repository }, completion: { result in + switch result { case .failure(let error): completion(.error(error)) - + case .success(let repository): var branches: [String] = [] repository.refs.map { edges in @@ -33,6 +33,6 @@ extension GithubClient { completion(.success(branches)) } - } + }) } } diff --git a/Classes/Repository/RepositoryBranches/RepositoryBranchesCell.swift b/Classes/Repository/RepositoryBranches/RepositoryBranchesCell.swift index beff55500..05899f147 100644 --- a/Classes/Repository/RepositoryBranches/RepositoryBranchesCell.swift +++ b/Classes/Repository/RepositoryBranches/RepositoryBranchesCell.swift @@ -11,20 +11,20 @@ import UIKit final class RepositoryBranchCell: SelectableCell { public let label = UILabel() private let checkedImageView = UIImageView(image: UIImage(named: "check-small")?.withRenderingMode(.alwaysTemplate)) - + override init(frame: CGRect) { super.init(frame: frame) - + backgroundColor = nil contentView.backgroundColor = nil - + contentView.addSubview(checkedImageView) checkedImageView.tintColor = Styles.Colors.Blue.medium.color checkedImageView.snp.makeConstraints { make in make.right.equalTo(-Styles.Sizes.gutter) make.centerY.equalTo(contentView.snp.centerY) } - + contentView.addSubview(label) label.font = Styles.Text.bodyBold.preferredFont label.textColor = .white @@ -33,24 +33,24 @@ final class RepositoryBranchCell: SelectableCell { make.right.lessThanOrEqualTo(checkedImageView.snp.left) make.centerY.equalTo(contentView.snp.centerY) } - + let border = contentView.addBorder(.bottom, left: Styles.Sizes.gutter, right: -Styles.Sizes.gutter ) border.backgroundColor = Styles.Colors.Gray.medium.color } - + func setSelected(_ selected: Bool) { checkedImageView.isHidden = !selected } - + required init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } - + // MARK: Accessibility - + override var accessibilityLabel: String? { get { return AccessibilityHelper.generatedLabel(forCell: self) } set { } diff --git a/Classes/Repository/RepositoryBranches/RepositoryBranchesSectionController.swift b/Classes/Repository/RepositoryBranches/RepositoryBranchesSectionController.swift index 858669ca6..c9a5d8478 100644 --- a/Classes/Repository/RepositoryBranches/RepositoryBranchesSectionController.swift +++ b/Classes/Repository/RepositoryBranches/RepositoryBranchesSectionController.swift @@ -14,9 +14,9 @@ protocol RepositoryBranchSectionControllerDelegate: class { } final class RepositoryBranchSectionController: ListSwiftSectionController { - + public weak var delegate: RepositoryBranchSectionControllerDelegate? - + override func createBinders(from value: RepositoryBranchViewModel) -> [ListBinder] { return [ binder( @@ -40,4 +40,3 @@ final class RepositoryBranchSectionController: ListSwiftSectionController, BaseListViewController2DataSource, -RepositoryBranchSectionControllerDelegate -{ +RepositoryBranchSectionControllerDelegate { private let owner: String private let repo: String @@ -21,60 +20,58 @@ RepositoryBranchSectionControllerDelegate private var branches: [String] = [] private let defaultBranch: String public private(set) var selectedBranch: String - + init(defaultBranch: String, selectedBranch: String, owner: String, repo: String, client: GithubClient - ) - { + ) { self.defaultBranch = defaultBranch self.selectedBranch = selectedBranch self.owner = owner self.repo = repo self.client = client super.init(emptyErrorMessage: "Couldn't load repository branches") - + title = NSLocalizedString("Branches", comment: "") preferredContentSize = Styles.Sizes.contextMenuSize feed.collectionView.backgroundColor = Styles.Colors.menuBackgroundColor.color feed.setLoadingSpinnerColor(to: .white) dataSource = self } - + override func viewDidLoad() { super.viewDidLoad() navigationController?.navigationBar.titleTextAttributes = [.foregroundColor: UIColor.white] addMenuDoneButton() } - + static func arrangeBranches(selectedBranch: String, defaultBranch: String, branches: [String]) -> [String] { var branches = branches - + if let selectedBranchIndex = branches.index(of: selectedBranch) { let elem = branches.remove(at: selectedBranchIndex) branches.insert(elem, at: 0) } - + if defaultBranch != selectedBranch, let defaultBranchIndex = branches.index(of: defaultBranch) { let elem = branches.remove(at: defaultBranchIndex) branches.insert(elem, at: 1) } - + return branches } - + required init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } - + override func fetch(page: String?) { client.fetchRepositoryBranches(owner: owner, repo: repo - ) - { [weak self] result in + ) { [weak self] result in guard let strongSelf = self else { return } switch result { case .success(let branches): @@ -83,20 +80,20 @@ RepositoryBranchSectionControllerDelegate defaultBranch: strongSelf.defaultBranch, branches: branches ) - + case .error(let error): Squawk.show(error: error) } self?.update(animated: true) } } - + func models(adapter: ListSwiftAdapter) -> [ListSwiftPair] { guard feed.status == .idle else { return [] } return branches.map { let value = RepositoryBranchViewModel(branch: $0, selected: $0 == self.selectedBranch) - + return ListSwiftPair(value) { [weak self] in let controller = RepositoryBranchSectionController() controller.delegate = self @@ -104,7 +101,7 @@ RepositoryBranchSectionControllerDelegate } } } - + func didSelect(value: RepositoryBranchViewModel) { self.selectedBranch = value.branch update(animated: trueUnlessReduceMotionEnabled) diff --git a/Classes/Repository/RepositoryBranches/RepositoryBranchesViewModel.swift b/Classes/Repository/RepositoryBranches/RepositoryBranchesViewModel.swift index be4f07edd..63645d1f9 100644 --- a/Classes/Repository/RepositoryBranches/RepositoryBranchesViewModel.swift +++ b/Classes/Repository/RepositoryBranches/RepositoryBranchesViewModel.swift @@ -11,15 +11,14 @@ import IGListKit struct RepositoryBranchViewModel: ListSwiftDiffable { let branch: String let selected: Bool - + var identifier: String { return branch } - + func isEqual(to value: ListSwiftDiffable) -> Bool { guard let value = value as? RepositoryBranchViewModel else { return false } return value.branch == branch && value.selected == selected } } - diff --git a/Classes/Repository/RepositoryClient.swift b/Classes/Repository/RepositoryClient.swift index 27de42852..beba6d140 100644 --- a/Classes/Repository/RepositoryClient.swift +++ b/Classes/Repository/RepositoryClient.swift @@ -128,7 +128,7 @@ final class RepositoryClient { completion: @escaping (Result) -> Void ) where T: RepositoryQuery { let contentSizeCategory = UIContentSizeCategory.preferred - githubClient.client.query(query, result: { $0 }) { result in + githubClient.client.query(query, result: { $0 }, completion: { result in switch result { case .failure(let error): Squawk.show(error: error) @@ -150,7 +150,7 @@ final class RepositoryClient { } } } - } + }) } func loadIssues( diff --git a/Classes/Repository/RepositoryCodeBlobViewController.swift b/Classes/Repository/RepositoryCodeBlobViewController.swift index e5249c857..40f3ccfb5 100644 --- a/Classes/Repository/RepositoryCodeBlobViewController.swift +++ b/Classes/Repository/RepositoryCodeBlobViewController.swift @@ -82,7 +82,7 @@ final class RepositoryCodeBlobViewController: UIViewController, EmptyViewDelegat } else { frame = view.bounds } - + emptyView.frame = frame codeView.frame = frame } diff --git a/Classes/Repository/RepositoryCodeDirectoryViewController.swift b/Classes/Repository/RepositoryCodeDirectoryViewController.swift index bae1f8e19..767031a44 100644 --- a/Classes/Repository/RepositoryCodeDirectoryViewController.swift +++ b/Classes/Repository/RepositoryCodeDirectoryViewController.swift @@ -13,8 +13,7 @@ import TUSafariActivity final class RepositoryCodeDirectoryViewController: BaseListViewController, BaseListViewControllerDataSource, ListSingleSectionControllerDelegate, -RepositoryBranchUpdatable -{ +RepositoryBranchUpdatable { private let client: GithubClient private var branch: String @@ -90,7 +89,7 @@ RepositoryBranchUpdatable @objc func onShare(sender: UIButton) { let alertTitle = "\(repo.owner)/\(repo.name):\(branch)" let alert = UIAlertController.configured(title: alertTitle, preferredStyle: .actionSheet) - + weak var weakSelf = self let alertBuilder = AlertActionBuilder { $0.rootViewController = weakSelf } var actions = [ @@ -102,7 +101,7 @@ RepositoryBranchUpdatable }, AlertAction.cancel() ] - + if let name = self.path.components.last { actions.insert(AlertAction(alertBuilder).share([name], activities: nil, type: .shareFileName) { $0.popoverPresentationController?.setSourceView(sender) @@ -221,9 +220,9 @@ extension RepositoryCodeDirectoryViewController { navigationController?.pushViewController(controller, animated: trueUnlessReduceMotionEnabled) } - - //Mark: RepositoryBranchUpdatable - + + // MARK: RepositoryBranchUpdatable + func updateBranch(to newBranch: String) { guard self.branch != newBranch else { return } self.branch = newBranch diff --git a/Classes/Repository/RepositoryIssuesViewController.swift b/Classes/Repository/RepositoryIssuesViewController.swift index 8a5f3e9a9..bac4aa825 100644 --- a/Classes/Repository/RepositoryIssuesViewController.swift +++ b/Classes/Repository/RepositoryIssuesViewController.swift @@ -34,7 +34,7 @@ SearchBarSectionControllerDelegate { super.init( emptyErrorMessage: NSLocalizedString("Cannot load issues.", comment: "") ) - + self.dataSource = self switch type { diff --git a/Classes/Repository/RepositoryOverviewViewController.swift b/Classes/Repository/RepositoryOverviewViewController.swift index 786fd5a7f..db92ddd70 100644 --- a/Classes/Repository/RepositoryOverviewViewController.swift +++ b/Classes/Repository/RepositoryOverviewViewController.swift @@ -21,8 +21,7 @@ class HackScrollIndicatorInsetsCollectionView: UICollectionView { class RepositoryOverviewViewController: BaseListViewController, BaseListViewControllerDataSource, -RepositoryBranchUpdatable -{ +RepositoryBranchUpdatable { private let repo: RepositoryDetails private let client: RepositoryClient @@ -122,13 +121,13 @@ RepositoryBranchUpdatable func emptySectionController(listAdapter: ListAdapter) -> ListSectionController { return RepositoryEmptyResultsSectionController( topInset: 0, - layoutInsets: view.safeAreaInsets, + layoutInsets: view.safeAreaInsets, type: .readme ) } - - //Mark: RepositoryBranchUpdatable - + + // MARK: RepositoryBranchUpdatable + func updateBranch(to newBranch: String) { guard self.branch != newBranch else { return } self.branch = newBranch diff --git a/Classes/Repository/RepositorySummaryCell.swift b/Classes/Repository/RepositorySummaryCell.swift index 7296ca692..6734991cf 100644 --- a/Classes/Repository/RepositorySummaryCell.swift +++ b/Classes/Repository/RepositorySummaryCell.swift @@ -79,7 +79,7 @@ final class RepositorySummaryCell: SelectableCell { titleView.reposition(for: contentView.bounds.width) resizeLabelListView(labels: labelListView.labels, cacheKey: labelListView.labels.reduce("", {$0 + $1.name})) } - + private func resizeLabelListView(labels: [RepositoryLabel], cacheKey: String) { let width = contentView.frame.width - (Styles.Sizes.columnSpacing * 2) let height = LabelListView.height(width: width, labels: labels, cacheKey: cacheKey) diff --git a/Classes/Repository/RepositorySummarySectionController.swift b/Classes/Repository/RepositorySummarySectionController.swift index 5c0b4d9ac..831674d17 100644 --- a/Classes/Repository/RepositorySummarySectionController.swift +++ b/Classes/Repository/RepositorySummarySectionController.swift @@ -24,7 +24,7 @@ final class RepositorySummarySectionController: ListGenericSectionController 0 else { return 0 } let labelListViewWidth = width - (Styles.Sizes.columnSpacing * 2) @@ -33,7 +33,7 @@ final class RepositorySummarySectionController: ListGenericSectionController UIAlertAction { return UIAlertAction( title: NSLocalizedString("Switch Branch", comment: ""), style: .default - ) { - [weak self] action in + ) { [weak self] _ in guard let strongSelf = self else { return } let viewController = RepositoryBranchesViewController( @@ -129,7 +128,7 @@ ContextMenuDelegate { repo: strongSelf.repo.name, client: strongSelf.client ) - + strongSelf.showContextualMenu( viewController, options: ContextMenu.Options( @@ -200,9 +199,9 @@ ContextMenuDelegate { let issuesViewController = IssuesViewController(client: client, model: model) show(issuesViewController, sender: self) } - - //MARK: ContextMenuDelegate - + + // MARK: ContextMenuDelegate + func contextMenuWillDismiss(viewController: UIViewController, animated: Bool) { guard let viewController = viewController as? RepositoryBranchesViewController else { return } self.branch = viewController.selectedBranch @@ -212,7 +211,7 @@ ContextMenuDelegate { } } } - + func contextMenuDidDismiss(viewController: UIViewController, animated: Bool) {} } diff --git a/Classes/Search/GithubClient+Search.swift b/Classes/Search/GithubClient+Search.swift index 440c056a4..19b6bf7d1 100644 --- a/Classes/Search/GithubClient+Search.swift +++ b/Classes/Search/GithubClient+Search.swift @@ -25,7 +25,7 @@ extension GithubClient { completion: @escaping (SearchResultType) -> Void ) -> Cancellable { let query = SearchReposQuery(search: query, before: before) - return client.query(query, result: { $0 }) { result in + return client.query(query, result: { $0 }, completion: { result in switch result { case .failure(let error): completion(.error(error)) @@ -70,7 +70,7 @@ extension GithubClient { } } } - } + }) } } diff --git a/Classes/Search/SearchNoResultsSectionController.swift b/Classes/Search/SearchNoResultsSectionController.swift index 1f8b13452..c5b2fc7f7 100644 --- a/Classes/Search/SearchNoResultsSectionController.swift +++ b/Classes/Search/SearchNoResultsSectionController.swift @@ -12,7 +12,7 @@ final class SearchNoResultsSectionController: ListSectionController { let topInset: CGFloat let layoutInsets: UIEdgeInsets - + init(topInset: CGFloat, layoutInsets: UIEdgeInsets) { self.topInset = topInset self.layoutInsets = layoutInsets diff --git a/Classes/Search/SearchRecentCell.swift b/Classes/Search/SearchRecentCell.swift index 186d344b8..7a75bb486 100644 --- a/Classes/Search/SearchRecentCell.swift +++ b/Classes/Search/SearchRecentCell.swift @@ -18,7 +18,7 @@ final class SearchRecentCell: SwipeSelectableCell { super.init(frame: frame) accessibilityTraits |= UIAccessibilityTraitButton isAccessibilityElement = true - + backgroundColor = .white imageView.contentMode = .scaleAspectFit diff --git a/Classes/Search/SearchResultSectionController.swift b/Classes/Search/SearchResultSectionController.swift index 99aa01d44..8fe8979a0 100644 --- a/Classes/Search/SearchResultSectionController.swift +++ b/Classes/Search/SearchResultSectionController.swift @@ -40,7 +40,7 @@ final class SearchResultSectionController: ListGenericSectionController { width: $0.collection.containerSize.width, height: Styles.Sizes.tableCellHeight ) - }, didSelect: { [weak self] context in + }, didSelect: { [weak self] _ in guard let strongSelf = self else { return } strongSelf.delegate?.didSelect(controller: strongSelf) }) diff --git a/Classes/Settings/DefaultReactionDetailController.swift b/Classes/Settings/DefaultReactionDetailController.swift index 4caa19934..b6ec7d160 100644 --- a/Classes/Settings/DefaultReactionDetailController.swift +++ b/Classes/Settings/DefaultReactionDetailController.swift @@ -35,7 +35,7 @@ class DefaultReactionDetailController: UITableViewController { } let cell: UITableViewCell - switch (reaction) { + switch reaction { case .thumbsUp, .__unknown: cell = thumbsUpCell case .thumbsDown: cell = thumbsDownCell case .laugh: cell = laughCell @@ -84,7 +84,7 @@ class DefaultReactionDetailController: UITableViewController { } @IBAction func toggleDefaultReaction(_ sender: Any) { - if(enabledSwitch.isOn) { + if enabledSwitch.isOn { updateDefault(reaction: .thumbsUp) } else { disableReaction() @@ -103,7 +103,7 @@ class DefaultReactionDetailController: UITableViewController { private func updateSections() { tableView.performBatchUpdates({ - if(enabledSwitch.isOn) { + if enabledSwitch.isOn { self.tableView.insertSections(IndexSet(integer: 1), with: .top) } else { self.tableView.deleteSections(IndexSet(integer: 1), with: .top) @@ -111,5 +111,3 @@ class DefaultReactionDetailController: UITableViewController { }, completion: nil) } } - - diff --git a/Classes/Settings/SettingsViewController.swift b/Classes/Settings/SettingsViewController.swift index ce7985666..6c6ff6588 100644 --- a/Classes/Settings/SettingsViewController.swift +++ b/Classes/Settings/SettingsViewController.swift @@ -39,7 +39,7 @@ NewIssueTableViewControllerDelegate { @IBOutlet weak var pushSwitch: UISwitch! @IBOutlet weak var pushCell: UITableViewCell! @IBOutlet weak var pushSettingsButton: UIButton! - + override func viewDidLoad() { super.viewDidLoad() @@ -60,7 +60,7 @@ NewIssueTableViewControllerDelegate { override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) - + defaultReactionLabel.text = ReactionContent.defaultReaction?.emoji ?? NSLocalizedString("Off", comment: "") @@ -128,7 +128,7 @@ NewIssueTableViewControllerDelegate { else { fatalError("Should always create GitHub issue URL") } // iOS 11 login uses SFAuthenticationSession which shares credentials with Safari.app UIApplication.shared.open(url, options: [:]) - + } func onAccounts() { @@ -139,13 +139,13 @@ NewIssueTableViewControllerDelegate { self.navigationController?.showDetailViewController(navigationController, sender: self) } } - + func onGitHubStatus() { guard let url = URL(string: "https://status.github.com/messages") else { fatalError("Should always create GitHub Status URL") } presentSafari(url: url) } - + func onReviewOnAppStore() { guard let url = URL(string: "itms-apps://itunes.apple.com/app/id1252320249?action=write-review") else { fatalError("Should always be valid app store URL") } @@ -186,7 +186,7 @@ NewIssueTableViewControllerDelegate { let navController = UINavigationController(rootViewController: repoViewController) showDetailViewController(navController, sender: self) } - + func onSetDefaultReaction() { //showDefaultReactionMenu() } @@ -267,7 +267,7 @@ NewIssueTableViewControllerDelegate { @IBAction func onSignature(_ sender: Any) { Signature.enabled = signatureSwitch.isOn } - + @IBAction func onPushNotificationsInfo(_ sender: Any) { showContextualMenu(PushNotificationsDisclaimerViewController()) } diff --git a/Classes/Systems/AppRouter/AppSplitViewController.swift b/Classes/Systems/AppRouter/AppSplitViewController.swift index e2bad7684..f6a465d74 100644 --- a/Classes/Systems/AppRouter/AppSplitViewController.swift +++ b/Classes/Systems/AppRouter/AppSplitViewController.swift @@ -10,13 +10,13 @@ import UIKit final class AppSplitViewController: UISplitViewController { - private let tabDelegate = TabBarControllerDelegate() - private let appSplitViewDelegate = SplitViewControllerDelegate() + private let tabDelegateController = TabBarControllerDelegate() + private let appSplitViewDelegateController = SplitViewControllerDelegate() override func viewDidLoad() { super.viewDidLoad() - masterTabBarController?.delegate = tabDelegate - delegate = appSplitViewDelegate + masterTabBarController?.delegate = tabDelegateController + delegate = appSplitViewDelegateController preferredDisplayMode = .allVisible } diff --git a/Classes/Systems/AppRouter/BookmarkShortcutRoute.swift b/Classes/Systems/AppRouter/BookmarkShortcutRoute.swift index 80630b83d..7a483b827 100644 --- a/Classes/Systems/AppRouter/BookmarkShortcutRoute.swift +++ b/Classes/Systems/AppRouter/BookmarkShortcutRoute.swift @@ -10,7 +10,7 @@ import Foundation import GitHubSession struct BookmarkShortcutRoute: Routable { - static func from(params: [String : String]) -> BookmarkShortcutRoute? { + static func from(params: [String: String]) -> BookmarkShortcutRoute? { return BookmarkShortcutRoute() } static var path: String { diff --git a/Classes/Systems/AppRouter/IssueNotificationRoute.swift b/Classes/Systems/AppRouter/IssueNotificationRoute.swift index 558ff6c9a..7c1d78ff7 100644 --- a/Classes/Systems/AppRouter/IssueNotificationRoute.swift +++ b/Classes/Systems/AppRouter/IssueNotificationRoute.swift @@ -13,7 +13,7 @@ struct IssueNotificationRoute: Routable { let owner: String let repo: String let number: Int - static func from(params: [String : String]) -> IssueNotificationRoute? { + static func from(params: [String: String]) -> IssueNotificationRoute? { guard let owner = params["owner"], let repo = params["repo"], let number = (params["number"] as NSString?)?.integerValue @@ -23,7 +23,7 @@ struct IssueNotificationRoute: Routable { static var path: String { return "com.githawk.issue-notifications" } - var encoded: [String : String] { + var encoded: [String: String] { return [ "owner": owner, "repo": repo, diff --git a/Classes/Systems/AppRouter/SearchShortcutRoute.swift b/Classes/Systems/AppRouter/SearchShortcutRoute.swift index 1d04d4c81..761cd5fb7 100644 --- a/Classes/Systems/AppRouter/SearchShortcutRoute.swift +++ b/Classes/Systems/AppRouter/SearchShortcutRoute.swift @@ -10,7 +10,7 @@ import UIKit import GitHubSession struct SearchShortcutRoute: Routable { - static func from(params: [String : String]) -> SearchShortcutRoute? { + static func from(params: [String: String]) -> SearchShortcutRoute? { return SearchShortcutRoute() } static var path: String { diff --git a/Classes/Systems/AppRouter/SwitchAccountShortcutRoute.swift b/Classes/Systems/AppRouter/SwitchAccountShortcutRoute.swift index b472206dd..3999ba594 100644 --- a/Classes/Systems/AppRouter/SwitchAccountShortcutRoute.swift +++ b/Classes/Systems/AppRouter/SwitchAccountShortcutRoute.swift @@ -11,11 +11,11 @@ import GitHubSession struct SwitchAccountShortcutRoute: Routable { let username: String - static func from(params: [String : String]) -> SwitchAccountShortcutRoute? { + static func from(params: [String: String]) -> SwitchAccountShortcutRoute? { guard let username = params["username"] else { return nil } return SwitchAccountShortcutRoute(username: username) } - var encoded: [String : String] { + var encoded: [String: String] { return ["username": username] } static var path: String { diff --git a/Classes/Systems/Autocomplete/AutocompleteController.swift b/Classes/Systems/Autocomplete/AutocompleteController.swift index 3d6958266..d9a97bc60 100644 --- a/Classes/Systems/Autocomplete/AutocompleteController.swift +++ b/Classes/Systems/Autocomplete/AutocompleteController.swift @@ -92,4 +92,3 @@ MessageAutocompleteControllerDelegate { } } - diff --git a/Classes/Systems/Autocomplete/EmojiAutocomplete.swift b/Classes/Systems/Autocomplete/EmojiAutocomplete.swift index 4b6a9e027..711a37a37 100644 --- a/Classes/Systems/Autocomplete/EmojiAutocomplete.swift +++ b/Classes/Systems/Autocomplete/EmojiAutocomplete.swift @@ -59,6 +59,6 @@ final class EmojiAutocomplete: AutocompleteType { return results[index].emoji } - var highlightAttributes: [NSAttributedStringKey : Any]? { return nil } + var highlightAttributes: [NSAttributedStringKey: Any]? { return nil } } diff --git a/Classes/Systems/Autocomplete/IssueAutocomplete.swift b/Classes/Systems/Autocomplete/IssueAutocomplete.swift index 42b4661af..79fed3da6 100644 --- a/Classes/Systems/Autocomplete/IssueAutocomplete.swift +++ b/Classes/Systems/Autocomplete/IssueAutocomplete.swift @@ -56,8 +56,8 @@ final class IssueAutocomplete: AutocompleteType { client.query( IssueAutocompleteQuery(query: "repo:\(owner)/\(repo) \(word)", page_size: 20), - result: { $0 } - ) { [weak self] result in + result: { $0 }, + completion: { [weak self] result in switch result { case .failure(let error): Squawk.show(error: error) @@ -80,13 +80,13 @@ final class IssueAutocomplete: AutocompleteType { } completion(strongSelf.results.count > 0) } - } + }) } func accept(index: Int) -> String? { return prefix + "\(results[index].number)" } - var highlightAttributes: [NSAttributedStringKey : Any]? { return nil } + var highlightAttributes: [NSAttributedStringKey: Any]? { return nil } } diff --git a/Classes/Systems/Autocomplete/UserAutocomplete.swift b/Classes/Systems/Autocomplete/UserAutocomplete.swift index dc7848c48..7ba8dcae5 100644 --- a/Classes/Systems/Autocomplete/UserAutocomplete.swift +++ b/Classes/Systems/Autocomplete/UserAutocomplete.swift @@ -64,10 +64,10 @@ final class UserAutocomplete: AutocompleteType { return prefix + results[index].login } - var highlightAttributes: [NSAttributedStringKey : Any]? { + var highlightAttributes: [NSAttributedStringKey: Any]? { return [ .foregroundColor: Styles.Colors.Blue.medium.color, - .backgroundColor: Styles.Colors.Blue.medium.color.withAlphaComponent(0.1), + .backgroundColor: Styles.Colors.Blue.medium.color.withAlphaComponent(0.1) ] } diff --git a/Classes/Systems/Feed.swift b/Classes/Systems/Feed.swift index 5a7860c12..4b969f0d7 100644 --- a/Classes/Systems/Feed.swift +++ b/Classes/Systems/Feed.swift @@ -90,7 +90,7 @@ final class Feed: NSObject, UIScrollViewDelegate { func showEmptyLoadingView() { loadingView.isHidden = false } - + func setLoadingSpinnerColor(to color: UIColor) { loadingView.setSpinnerColor(to: color) } diff --git a/Classes/Systems/GithubHighlighting.swift b/Classes/Systems/GithubHighlighting.swift index b9a6a5fc7..6b943dae8 100644 --- a/Classes/Systems/GithubHighlighting.swift +++ b/Classes/Systems/GithubHighlighting.swift @@ -22,7 +22,7 @@ enum GithubHighlighting { let fixedLanguage = language.isEmpty ? nil : language return shared?.highlight(code, as: fixedLanguage, fastRender: true) } - + static func highlight(_ code: String) -> NSAttributedString? { return shared?.highlight(code) } diff --git a/Classes/Systems/InboxZeroLoader.swift b/Classes/Systems/InboxZeroLoader.swift index 8729ace6d..a84b5b7e6 100644 --- a/Classes/Systems/InboxZeroLoader.swift +++ b/Classes/Systems/InboxZeroLoader.swift @@ -41,7 +41,7 @@ final class InboxZeroLoader { } let path = self.path - session.dataTask(with: url) { [weak self] (data, response, error) in + session.dataTask(with: url) { [weak self] (data, _, _) in if let data = data, let tmp = try? JSONSerialization.jsonObject(with: data, options: []) as? SerializedType, let json = tmp { diff --git a/Classes/Systems/PhotoViewHandler.swift b/Classes/Systems/PhotoViewHandler.swift index 08577c04d..839eaeaf7 100644 --- a/Classes/Systems/PhotoViewHandler.swift +++ b/Classes/Systems/PhotoViewHandler.swift @@ -49,7 +49,7 @@ IssueCommentHtmlCellImageDelegate { with: url, options: [.highPriority], progress: nil - ) { [weak self] (image, data, error, finished) in + ) { [weak self] (image, data, _, _) in if let image = image { let photo = IssueCommentPhoto(image: image, data: nil) let photosViewController = NYTPhotosViewController(photos: [photo]) diff --git a/Classes/Systems/Secrets.swift b/Classes/Systems/Secrets.swift index bade6053d..61442dc9e 100644 --- a/Classes/Systems/Secrets.swift +++ b/Classes/Systems/Secrets.swift @@ -9,33 +9,33 @@ import Foundation enum Secrets { - + enum CI { static let githubId = "{GITHUBID}" static let githubSecret = "{GITHUBSECRET}" static let imgurId = "{IMGURID}" } - + enum GitHub { static let clientId = Secrets.environmentVariable(named: "GITHUB_CLIENT_ID") ?? CI.githubId static let clientSecret = Secrets.environmentVariable(named: "GITHUB_CLIENT_SECRET") ?? CI.githubSecret } - + enum Imgur { static let clientId = Secrets.environmentVariable(named: "IMGUR_CLIENT_ID") ?? CI.imgurId } - + fileprivate static func environmentVariable(named: String) -> String? { - + let processInfo = ProcessInfo.processInfo - + guard let value = processInfo.environment[named] else { print("‼️ Missing Environment Variable: '\(named)'") return nil } - + return value - + } - + } diff --git a/Classes/Systems/ShortcutHandler.swift b/Classes/Systems/ShortcutHandler.swift index ccbbe187e..692434860 100644 --- a/Classes/Systems/ShortcutHandler.swift +++ b/Classes/Systems/ShortcutHandler.swift @@ -74,4 +74,3 @@ struct ShortcutHandler { } } - diff --git a/Classes/Systems/WrappingStaticSpacingFlowLayout.swift b/Classes/Systems/WrappingStaticSpacingFlowLayout.swift index a9bfa6a6c..e5b94f31d 100755 --- a/Classes/Systems/WrappingStaticSpacingFlowLayout.swift +++ b/Classes/Systems/WrappingStaticSpacingFlowLayout.swift @@ -9,30 +9,26 @@ import Foundation final class WrappingStaticSpacingFlowLayout: UICollectionViewFlowLayout { - + var interitemSpacing: CGFloat { - get { - return minimumInteritemSpacing - } + return minimumInteritemSpacing } - + var rowSpacing: CGFloat { - get { - return minimumLineSpacing - } + return minimumLineSpacing } - + init(estimatedItemSize: CGSize = CGSize.zero, interitemSpacing: CGFloat, rowSpacing: CGFloat) { super.init() self.estimatedItemSize = estimatedItemSize self.minimumInteritemSpacing = interitemSpacing self.minimumLineSpacing = rowSpacing } - + required init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } - + override func layoutAttributesForElements(in rect: CGRect) -> [UICollectionViewLayoutAttributes]? { if let attributes = super.layoutAttributesForElements(in: rect) { for (index, attribute) in attributes.enumerated() { @@ -42,7 +38,7 @@ final class WrappingStaticSpacingFlowLayout: UICollectionViewFlowLayout { } let prevLayoutAttributes = attributes[index - 1] let origin = prevLayoutAttributes.frame.maxX - if (origin + interitemSpacing + attribute.frame.size.width < self.collectionViewContentSize.width) { + if origin + interitemSpacing + attribute.frame.size.width < self.collectionViewContentSize.width { attribute.frame.origin.x = origin + interitemSpacing } } diff --git a/Classes/Utility/HapticFeedback.swift b/Classes/Utility/HapticFeedback.swift index ac8ff08a0..e3359a46e 100644 --- a/Classes/Utility/HapticFeedback.swift +++ b/Classes/Utility/HapticFeedback.swift @@ -9,18 +9,18 @@ import Foundation enum Haptic { - + static private let selectionGenerator = UISelectionFeedbackGenerator() static private let notificationGenerator = UINotificationFeedbackGenerator() - + static func triggerImpact(_ style: UIImpactFeedbackStyle) { UIImpactFeedbackGenerator(style: style).impactOccurred() } - + static func triggerSelection() { selectionGenerator.selectionChanged() } - + static func triggerNotification(_ type: UINotificationFeedbackType) { notificationGenerator.notificationOccurred(type) } diff --git a/Classes/Utility/Int+Abbreviated.swift b/Classes/Utility/Int+Abbreviated.swift index e64e6cc79..f9da3aed1 100644 --- a/Classes/Utility/Int+Abbreviated.swift +++ b/Classes/Utility/Int+Abbreviated.swift @@ -18,7 +18,7 @@ extension Int { // less than 1 million, abbreviate to thousands if self < 1_000_000 { - var n = Double(self); + var n = Double(self) n = Double( floor(n/100)/10 ) return "\(n.description)k" } diff --git a/Classes/Utility/LogEnvironmentInformation.swift b/Classes/Utility/LogEnvironmentInformation.swift index fe3a11d3f..a1196e6dc 100644 --- a/Classes/Utility/LogEnvironmentInformation.swift +++ b/Classes/Utility/LogEnvironmentInformation.swift @@ -16,6 +16,6 @@ func LogEnvironmentInformation(application: UIApplication) { "voice-enabled": UIAccessibilityIsVoiceOverRunning() ? "1": "0", "lang": NSLocale.autoupdatingCurrent.languageCode ?? "n/a", "country": NSLocale.autoupdatingCurrent.regionCode ?? "n/a", - "rtl": application.userInterfaceLayoutDirection == .rightToLeft ? "1" : "0", + "rtl": application.userInterfaceLayoutDirection == .rightToLeft ? "1" : "0" ]) } diff --git a/Classes/View Controllers/BaseListViewController2.swift b/Classes/View Controllers/BaseListViewController2.swift index 428b45abe..949210316 100644 --- a/Classes/View Controllers/BaseListViewController2.swift +++ b/Classes/View Controllers/BaseListViewController2.swift @@ -172,5 +172,5 @@ EmptyViewDelegate { func didTapRetry() { self.feed.refreshHead() } - + } diff --git a/Classes/View Controllers/ContrastContextMenu.swift b/Classes/View Controllers/ContrastContextMenu.swift index 9d49c0204..562e54dc2 100644 --- a/Classes/View Controllers/ContrastContextMenu.swift +++ b/Classes/View Controllers/ContrastContextMenu.swift @@ -9,7 +9,7 @@ import UIKit struct ContrastContextMenuItem { - + let title: String let iconName: String? let iconColor: UIColor? @@ -36,12 +36,12 @@ final class ContrastContextMenu: UITableViewController { private class Cell: UITableViewCell { static let reuseIdentifier = "cell" - var border: UIView? = nil + var border: UIView? override init(style: UITableViewCellStyle, reuseIdentifier: String?) { super.init(style: style, reuseIdentifier: reuseIdentifier) accessibilityTraits |= UIAccessibilityTraitButton isAccessibilityElement = true - + selectedBackgroundView = UIView() selectedBackgroundView?.backgroundColor = Styles.Colors.Gray.medium.color contentView.backgroundColor = nil @@ -49,13 +49,13 @@ final class ContrastContextMenu: UITableViewController { textLabel?.font = Styles.Text.bodyBold.preferredFont textLabel?.textColor = .white - + imageView?.tintColor = Styles.Colors.Blue.medium.color border = contentView.addBorder(.top) border?.backgroundColor = Styles.Colors.Gray.medium.color } - + override func layoutSubviews() { super.layoutSubviews() guard let frame = textLabel?.frame, imageView != nil else { return } diff --git a/Classes/Views/CardCollectionViewCell.swift b/Classes/Views/CardCollectionViewCell.swift index 4dc032897..de6159715 100644 --- a/Classes/Views/CardCollectionViewCell.swift +++ b/Classes/Views/CardCollectionViewCell.swift @@ -125,7 +125,7 @@ class CardCollectionViewCell: UICollectionViewCell, UIGestureRecognizerDelegate to: CGPoint(x: pixelSnapBounds.minX, y: pixelSnapBounds.maxY - cornerRadius), controlPoint: CGPoint(x: pixelSnapBounds.minX, y: pixelSnapBounds.maxY) ) - + fillPath = borderPath.copy() as! UIBezierPath fillPath.close() } @@ -145,5 +145,3 @@ class CardCollectionViewCell: UICollectionViewCell, UIGestureRecognizerDelegate } } - - diff --git a/Classes/Views/EmptyLoadingView.swift b/Classes/Views/EmptyLoadingView.swift index ec72a1b3e..670be3e66 100644 --- a/Classes/Views/EmptyLoadingView.swift +++ b/Classes/Views/EmptyLoadingView.swift @@ -17,9 +17,9 @@ final class EmptyLoadingView: UIView { activity.startAnimating() addSubview(activity) } - + func setSpinnerColor(to color: UIColor) { - activity.color = color + activity.color = color } required init?(coder aDecoder: NSCoder) { diff --git a/Classes/Views/EmptyView.swift b/Classes/Views/EmptyView.swift index 975938ac7..945f9c951 100644 --- a/Classes/Views/EmptyView.swift +++ b/Classes/Views/EmptyView.swift @@ -17,7 +17,7 @@ final class EmptyView: UIView { let label = UILabel() let button = UIButton(type: .system) - var delegate: EmptyViewDelegate? + weak var delegate: EmptyViewDelegate? override init(frame: CGRect) { super.init(frame: frame) diff --git a/Classes/Views/LabelListCell.swift b/Classes/Views/LabelListCell.swift index e1fd876aa..48c699e68 100644 --- a/Classes/Views/LabelListCell.swift +++ b/Classes/Views/LabelListCell.swift @@ -10,7 +10,7 @@ import Foundation import IGListKit final class LabelListCell: UICollectionViewCell, ListBindable { - + static let reuse = "cell" static let font = Styles.Text.smallTitle.preferredFont @@ -19,25 +19,25 @@ final class LabelListCell: UICollectionViewCell, ListBindable { ) -> CGSize { return string.size(font: font, xPadding: Styles.Sizes.labelTextPadding, yPadding: 3) } - + private let nameLabel = UILabel() - + override init(frame: CGRect) { super.init(frame: frame) isAccessibilityElement = true accessibilityTraits |= UIAccessibilityTraitButton - + layer.cornerRadius = Styles.Sizes.labelCornerRadius contentView.layer.cornerRadius = Styles.Sizes.labelCornerRadius - + nameLabel.font = LabelListCell.font contentView.addSubview(nameLabel) nameLabel.snp.makeConstraints { make in make.center.equalTo(contentView) } } - + required init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } @@ -51,9 +51,9 @@ final class LabelListCell: UICollectionViewCell, ListBindable { nameLabel.text = viewModel.name nameLabel.textColor = color.textOverlayColor } - + // MARK: Public API - + func configure(label: RepositoryLabel) { let color = UIColor.fromHex(label.color) backgroundColor = color @@ -69,5 +69,5 @@ final class LabelListCell: UICollectionViewCell, ListBindable { } set { } } - + } diff --git a/Classes/Views/LabelListView.swift b/Classes/Views/LabelListView.swift index 528757638..5dcfe8f49 100755 --- a/Classes/Views/LabelListView.swift +++ b/Classes/Views/LabelListView.swift @@ -9,29 +9,29 @@ import Foundation final class LabelListView: UIView, UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout { - + private static var cache = [String: CGFloat]() - + static func height(width: CGFloat, labels: [RepositoryLabel], cacheKey: String) -> CGFloat { let key = "\(cacheKey)\(width)" if let cachedHeight = LabelListView.cache[key] { return cachedHeight } - + let rowHeight = LabelListCell.size(labels.first?.name ?? "").height let interitemSpacing = labels.count > 1 ? CGFloat(labels.count - 1) * Styles.Sizes.labelSpacing : 0.0 let labelTextTotalWidth = labels.reduce(0, { $0 + LabelListCell.size($1.name).width }) + interitemSpacing let labelRows = ceil(labelTextTotalWidth / width) let rowSpacing = labelRows > 1 ? (labelRows - 1) * Styles.Sizes.labelSpacing : 0.0 - + let height = ceil((rowHeight * labelRows) + rowSpacing) LabelListView.cache[key] = height - + return height } - + var labels = [RepositoryLabel]() - + let collectionView: UICollectionView = { let layout = WrappingStaticSpacingFlowLayout(interitemSpacing: Styles.Sizes.labelSpacing, rowSpacing: Styles.Sizes.labelSpacing) @@ -42,15 +42,15 @@ final class LabelListView: UIView, UICollectionViewDataSource, UICollectionViewD collectionView.isUserInteractionEnabled = false return collectionView }() - + override init(frame: CGRect) { super.init(frame: frame) - + collectionView.delegate = self collectionView.dataSource = self addSubview(collectionView) } - + required init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } @@ -59,27 +59,27 @@ final class LabelListView: UIView, UICollectionViewDataSource, UICollectionViewD super.layoutSubviews() collectionView.frame = bounds } - + // MARK: UICollectionViewDataSource - + func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { return labels.count } - + func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { let cell = collectionView.dequeueReusableCell(withReuseIdentifier: LabelListCell.reuse, for: indexPath) as! LabelListCell let label = labels[indexPath.row] cell.configure(label: label) return cell } - + func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize { let label = labels[indexPath.row] return LabelListCell.size(label.name) } - + // MARK: Public API - + func configure(labels: [RepositoryLabel]) { self.labels = labels collectionView.reloadData() diff --git a/Classes/Views/MarkdownStyledTextView.swift b/Classes/Views/MarkdownStyledTextView.swift index 95c15cd1d..1f1659e5e 100644 --- a/Classes/Views/MarkdownStyledTextView.swift +++ b/Classes/Views/MarkdownStyledTextView.swift @@ -37,7 +37,7 @@ class MarkdownStyledTextView: StyledTextView, StyledTextViewDelegate { // MARK: StyledTextViewDelegate - func didTap(view: StyledTextView, attributes: [NSAttributedStringKey : Any], point: CGPoint) { + func didTap(view: StyledTextView, attributes: [NSAttributedStringKey: Any], point: CGPoint) { if let details = attributes[MarkdownAttribute.details] as? String { showDetailsInMenu(details: details, point: point) } @@ -45,7 +45,7 @@ class MarkdownStyledTextView: StyledTextView, StyledTextViewDelegate { tapDelegate?.didTap(cell: self, attribute: detected) } - func didLongPress(view: StyledTextView, attributes: [NSAttributedStringKey : Any], point: CGPoint) { + func didLongPress(view: StyledTextView, attributes: [NSAttributedStringKey: Any], point: CGPoint) { if let urlString = attributes[MarkdownAttribute.url] as? String, let url = URL(string: urlString) { show(url: url) } diff --git a/Classes/Views/NavigationTitleDropdownView.swift b/Classes/Views/NavigationTitleDropdownView.swift index e8c705610..275a91c62 100644 --- a/Classes/Views/NavigationTitleDropdownView.swift +++ b/Classes/Views/NavigationTitleDropdownView.swift @@ -121,4 +121,3 @@ final class NavigationTitleDropdownView: UIControl { } } - diff --git a/Classes/Views/StyledTableCell.swift b/Classes/Views/StyledTableCell.swift index c481ce209..84b735e6c 100644 --- a/Classes/Views/StyledTableCell.swift +++ b/Classes/Views/StyledTableCell.swift @@ -27,6 +27,5 @@ class StyledTableCell: UITableViewCell { background.backgroundColor = Styles.Colors.Gray.alphaLighter selectedBackgroundView = background } - -} +} diff --git a/Classes/Views/TextActionsController.swift b/Classes/Views/TextActionsController.swift index 9ff24ce8d..44e12dd1d 100644 --- a/Classes/Views/TextActionsController.swift +++ b/Classes/Views/TextActionsController.swift @@ -58,7 +58,7 @@ final class TextActionsController: NSObject, // MARK: UIImagePickerControllerDelegate - func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) { + func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String: Any]) { guard let image = info[UIImagePickerControllerOriginalImage] as? UIImage else { return } let username = client?.userSession?.username ?? Constants.Strings.unknown diff --git a/Classes/Views/UIScrollView+LeftRightSafeInset.swift b/Classes/Views/UIScrollView+LeftRightSafeInset.swift index 0a5353a8d..c2c61dfed 100644 --- a/Classes/Views/UIScrollView+LeftRightSafeInset.swift +++ b/Classes/Views/UIScrollView+LeftRightSafeInset.swift @@ -9,7 +9,7 @@ import UIKit extension UIScrollView { - + func updateSafeInset(container view: UIView, base inset: UIEdgeInsets) { let safe = view.safeAreaInsets contentInset = UIEdgeInsets( diff --git a/Freetime.xcodeproj/project.pbxproj b/Freetime.xcodeproj/project.pbxproj index bfd33a841..e14e29225 100644 --- a/Freetime.xcodeproj/project.pbxproj +++ b/Freetime.xcodeproj/project.pbxproj @@ -2303,7 +2303,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0930; - LastUpgradeCheck = 0930; + LastUpgradeCheck = 1000; ORGANIZATIONNAME = "Ryan Nystrom"; TargetAttributes = { 294EE4B8209006BF002C9CB1 = { @@ -2644,7 +2644,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "#\"${PODS_ROOT}/SwiftLint/swiftlint\""; + shellScript = "\"${PODS_ROOT}/SwiftLint/swiftlint\"\n"; }; F46376DA96978B72BF162CA2 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; @@ -3334,7 +3334,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = A4D6EAEE85A1F4878338D48C /* Pods-FreetimeWatch Extension.debug.xcconfig */; buildSettings = { - ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; + ASSETCATALOG_COMPILER_COMPLICATION_NAME = ""; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; @@ -3358,7 +3358,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = E6EF57A6CF52B90990B21F83 /* Pods-FreetimeWatch Extension.release.xcconfig */; buildSettings = { - ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; + ASSETCATALOG_COMPILER_COMPLICATION_NAME = ""; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; @@ -3382,7 +3382,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 0F26A46A43D11F8D04E17D4A /* Pods-FreetimeWatch Extension.testflight.xcconfig */; buildSettings = { - ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; + ASSETCATALOG_COMPILER_COMPLICATION_NAME = ""; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; @@ -3435,7 +3435,7 @@ CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -3458,7 +3458,6 @@ ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_COMPILATION_MODE = wholemodule; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; TARGETED_DEVICE_FAMILY = "1,2"; }; diff --git a/Freetime.xcodeproj/xcshareddata/xcschemes/Freetime-AppCenter.xcscheme b/Freetime.xcodeproj/xcshareddata/xcschemes/Freetime-AppCenter.xcscheme index 40cf6c820..c6da99467 100644 --- a/Freetime.xcodeproj/xcshareddata/xcschemes/Freetime-AppCenter.xcscheme +++ b/Freetime.xcodeproj/xcshareddata/xcschemes/Freetime-AppCenter.xcscheme @@ -1,6 +1,6 @@ StyledTextString { let builder = StyledTextBuilder(text: "") text.detectAndHandleShortlink( @@ -21,7 +21,7 @@ class DetectShortlinkTests: XCTestCase { ) return builder.build() } - + func checkForIssueLink(_ styledTexts: [StyledText]) -> (linkText: String, issueNumber: Int)? { // scanning for a styledText unit that has been formatted with blue font and // contains an Issue MarkdownAttribute @@ -40,64 +40,63 @@ class DetectShortlinkTests: XCTestCase { } return nil } - - + func test_positiveMatches() { // test 4 things: // 1) for positive text match // 2) that the correct text is blue/linked (eg the parentheses aren't blue also) // 3) that the MarkdownIssue is linked correctly with an issue number // 4) that the string displayed after reformatting == the original string - + var testString = "#1234" var builder: StyledTextString = setupBuilder(with: testString) var containsLink = checkForIssueLink(builder.styledTexts)! XCTAssertEqual(containsLink.linkText, "#1234") XCTAssertEqual(containsLink.issueNumber, 1234) XCTAssertEqual(builder.allText, testString) - + testString = "with a space preceding #1235" builder = setupBuilder(with: testString) containsLink = checkForIssueLink(builder.styledTexts)! XCTAssertEqual(containsLink.linkText, "#1235") XCTAssertEqual(containsLink.issueNumber, 1235) XCTAssertEqual(builder.allText, testString) - + testString = "with a newline preceding \n#345" builder = setupBuilder(with: testString) containsLink = checkForIssueLink(builder.styledTexts)! XCTAssertEqual(containsLink.linkText, "#345") XCTAssertEqual(containsLink.issueNumber, 345) XCTAssertEqual(builder.allText, testString) - + testString = "embedded in parentheses (#1900)" builder = setupBuilder(with: testString) containsLink = checkForIssueLink(builder.styledTexts)! XCTAssertEqual(containsLink.linkText, "#1900") XCTAssertEqual(containsLink.issueNumber, 1900) XCTAssertEqual(builder.allText, testString) - + testString = "with owner and repo preceding rnystrom/githawk#4321" builder = setupBuilder(with: testString) containsLink = checkForIssueLink(builder.styledTexts)! XCTAssertEqual(containsLink.linkText, "rnystrom/githawk#4321") XCTAssertEqual(containsLink.issueNumber, 4321) XCTAssertEqual(builder.allText, testString) - + testString = "Fixes (#1" builder = setupBuilder(with: testString) containsLink = checkForIssueLink(builder.styledTexts)! XCTAssertEqual(containsLink.linkText, "#1") XCTAssertEqual(containsLink.issueNumber, 1) XCTAssertEqual(builder.allText, testString) - + testString = "Fixes #12)" builder = setupBuilder(with: testString) containsLink = checkForIssueLink(builder.styledTexts)! XCTAssertEqual(containsLink.linkText, "#12") XCTAssertEqual(containsLink.issueNumber, 12) XCTAssertEqual(builder.allText, testString) - + testString = "Fixes(#432)" builder = setupBuilder(with: testString) containsLink = checkForIssueLink(builder.styledTexts)! @@ -112,20 +111,20 @@ class DetectShortlinkTests: XCTestCase { XCTAssertEqual(containsLink.issueNumber, 4) XCTAssertEqual(builder.allText, testString) } - + func test_negativeMatches() { var builder = setupBuilder(with: "!1234") var containsLink = checkForIssueLink(builder.styledTexts) XCTAssertNil(containsLink) - + builder = setupBuilder(with: "imo the best pr so far is prob # 1906") containsLink = checkForIssueLink(builder.styledTexts) XCTAssertNil(containsLink) - + builder = setupBuilder(with: "#123F") containsLink = checkForIssueLink(builder.styledTexts) XCTAssertNil(containsLink) - + builder = setupBuilder(with: "f#123") containsLink = checkForIssueLink(builder.styledTexts) XCTAssertNil(containsLink) diff --git a/FreetimeTests/FilePathTests.swift b/FreetimeTests/FilePathTests.swift index 8d1847154..c5f812d48 100644 --- a/FreetimeTests/FilePathTests.swift +++ b/FreetimeTests/FilePathTests.swift @@ -48,5 +48,5 @@ class FilePathTests: XCTestCase { XCTAssertEqual(FilePath(components: ["foo", "bar"]).appending("baz.swift").path, "foo/bar/baz.swift") XCTAssertEqual(FilePath(components: ["foo", "bar", "bang"]).appending("baz.swift").path, "foo/bar/bang/baz.swift") } - + } diff --git a/FreetimeTests/IssueCommentTableTests.swift b/FreetimeTests/IssueCommentTableTests.swift index e72eaf624..6686bbf97 100644 --- a/FreetimeTests/IssueCommentTableTests.swift +++ b/FreetimeTests/IssueCommentTableTests.swift @@ -15,10 +15,10 @@ class IssueCommentTableTests: XCTestCase { var longerTextItem: StyledTextRenderer! var tallerItem: StyledTextRenderer! let contentSizeCategory = UIApplication.shared.preferredContentSizeCategory - + override func setUp() { super.setUp() - + textItem = StyledTextRenderer( string: StyledTextString( styledTexts: [StyledText( @@ -27,7 +27,7 @@ class IssueCommentTableTests: XCTestCase { ), contentSizeCategory: contentSizeCategory ) - + medTextItem = StyledTextRenderer( string: StyledTextString( styledTexts: [StyledText( @@ -36,8 +36,7 @@ class IssueCommentTableTests: XCTestCase { ), contentSizeCategory: contentSizeCategory ) - - + longerTextItem = StyledTextRenderer( string: StyledTextString( styledTexts: [StyledText( @@ -46,7 +45,7 @@ class IssueCommentTableTests: XCTestCase { ), contentSizeCategory: contentSizeCategory ) - + tallerItem = StyledTextRenderer( string: StyledTextString( styledTexts: [StyledText( @@ -56,20 +55,20 @@ class IssueCommentTableTests: XCTestCase { contentSizeCategory: .accessibilityExtraExtraLarge ) } - + func test_tableDimensions() { - + // create table rows with text elements of different sizes and test whether the // model recieves appropriate height and width dimensions let rowOne: [StyledTextRenderer] = [textItem, textItem, textItem] let rowTwo: [StyledTextRenderer] = [textItem, medTextItem, textItem] let rowThree: [StyledTextRenderer] = [textItem, textItem, longerTextItem] let rowFour: [StyledTextRenderer] = [tallerItem, textItem, textItem] - + let rows = [rowOne, rowTwo, rowThree, rowFour] var buckets = [TableBucket()] var rowHeights = [CGFloat]() - + rows.forEach { fillBuckets( rows: $0, @@ -78,22 +77,21 @@ class IssueCommentTableTests: XCTestCase { fill: false ) } - + let model = IssueCommentTableModel( buckets: buckets, rowHeights: rowHeights ) - + let columns = model.columns - + //widths should reflect the width of widest cell in column XCTAssertEqual(columns[0].width, textItem.viewSize(in: 0).width) XCTAssertEqual(columns[1].width, medTextItem.viewSize(in: 0).width) XCTAssertEqual(columns[2].width, longerTextItem.viewSize(in: 0).width) - + //heights should reflect the height of the tallest cell across horizontal row XCTAssertEqual(rowHeights[0], textItem.viewSize(in: 0).height) XCTAssertEqual(rowHeights[3], tallerItem.viewSize(in: 0).height) } } - diff --git a/FreetimeTests/IssueTests.swift b/FreetimeTests/IssueTests.swift index d771b68d3..f25fb7ff4 100644 --- a/FreetimeTests/IssueTests.swift +++ b/FreetimeTests/IssueTests.swift @@ -248,7 +248,7 @@ class IssueTests: XCTestCase { func test_whenCheckmarks() { let body = [ "- [ ] foo", - "- [x] bar", + "- [x] bar" ].joined(separator: "\r\n") let models = MarkdownModels( body, @@ -265,12 +265,11 @@ class IssueTests: XCTestCase { XCTAssertNotNil(attrText.attributes(at: 2, effectiveRange: nil)[.attachment]) XCTAssertNotNil(attrText.attributes(at: 11, effectiveRange: nil)[.attachment]) } - + func test_linkContainingBrackets() { - + // Issue #120 // the [\\[Pitch\\] slashes at one point rendered incorrectly as \[Pitch\] instead of [Pitch] - let body = "...adoption.\r\n\r\nSee: [\\[Pitch\\] Introducing the \"Unwrap or Die\" operator to the standard library](https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20170626/037730.html)" let models = MarkdownModels( body, @@ -281,18 +280,18 @@ class IssueTests: XCTestCase { contentSizeCategory: .large, isRoot: false ) - + XCTAssertEqual((models[0] as! StyledTextRenderer).string.allText, "...adoption.\nSee: [Pitch] Introducing the \"Unwrap or Die\" operator to the standard library") } - + func test_URLThatContainsIssueReferenceLinkInDescription() { - + // issue 1593: the issue reference link inside the link description was apparently the reason the link wasn't rendered correctly // the url was rendered as "[apple/swift-evolution#793](github.com/apple/swift-evolution/pull/793)" // instead of "apple/swift-evolution#793" - + let body = "This is the implementation for [apple/swift-evolution#793](https://github.com/apple/swift-evolution/pull/793)\r\n\r\nNote: One of the new tests fails..." - + let models = MarkdownModels( body, owner: "owner", @@ -302,8 +301,8 @@ class IssueTests: XCTestCase { contentSizeCategory: .large, isRoot: false ) - - XCTAssertEqual((models[0] as! StyledTextRenderer).string.allText, "This is the implementation for apple/swift-evolution#793\nNote: One of the new tests fails...") + + XCTAssertEqual((models[0] as! StyledTextRenderer).string.allText, "This is the implementation for apple/swift-evolution#793\nNote: One of the new tests fails...") } } diff --git a/FreetimeTests/LocalNotificationCacheTests.swift b/FreetimeTests/LocalNotificationCacheTests.swift index 8ee3f1799..2fa799c2b 100644 --- a/FreetimeTests/LocalNotificationCacheTests.swift +++ b/FreetimeTests/LocalNotificationCacheTests.swift @@ -23,14 +23,14 @@ class LocalNotificationCacheTests: XCTestCase { let path = self.path(for: test) do { try FileManager.default.removeItem(atPath: path) - } catch { + } catch { print("\(error.localizedDescription)\npath: \(path)") } } func test_whenNoNotifications_thatNothingReturned() { clear(for: #function) - + let cache = LocalNotificationsCache(path: path(for: #function)) var executed = false cache.update(notifications: []) { results in @@ -72,7 +72,7 @@ class LocalNotificationCacheTests: XCTestCase { func test_whenUpdating_thatReadFirstTime_thenSecondCallEmpty() { clear(for: #function) - + let cache = LocalNotificationsCache(path: path(for: #function)) let date = Date() let n1 = [ @@ -106,27 +106,27 @@ class LocalNotificationCacheTests: XCTestCase { XCTAssertEqual(executions, 3) } - + func test_whenUpdatingWithSameNotificationWithUpdatedTime_thatNotificationReceived() { clear(for: #function) - + let cache = LocalNotificationsCache(path: path(for: #function)) let n1 = [ makeNotificaction(id: "123", title: "foo", updatedAt: Date()) ] - + cache.update(notifications: n1) { results in XCTAssertEqual(results.count, 1) } - + cache.update(notifications: n1) { results in XCTAssertEqual(results.count, 0) } - + let n2 = [ makeNotificaction(id: "123", title: "foo", updatedAt: Date(timeIntervalSinceNow: 10)) ] - + cache.update(notifications: n2) { results in XCTAssertEqual(results.count, 1) } diff --git a/FreetimeTests/NetworkingURLPathTests.swift b/FreetimeTests/NetworkingURLPathTests.swift index 9e432bafa..13abfe95a 100644 --- a/FreetimeTests/NetworkingURLPathTests.swift +++ b/FreetimeTests/NetworkingURLPathTests.swift @@ -11,9 +11,9 @@ import XCTest @testable import Freetime class UrlPathComponents: XCTestCase { - + func DISABLED_test_addReviewers() { - + //test that add reviewers request gets a 401 unauthorized response instead of a 404 //Issue #1829: add reviewers was receiving a 404 response let addReviewersRequest = V3AddPeopleRequest(owner: "GitHawkApp", @@ -22,18 +22,18 @@ class UrlPathComponents: XCTestCase { type: .reviewers, add: true, people: []) - + let githubclient = GithubClient() let promise = expectation(description: "completion handler invoked") var requestResponse: GitHubAPI.Result>? - + githubclient.client.send(addReviewersRequest) { response in requestResponse = response promise.fulfill() } - + waitForExpectations(timeout: 5, handler: nil) - + switch requestResponse! { case .failure(let error): let clientError = error as! GitHubAPI.ClientError @@ -45,9 +45,9 @@ class UrlPathComponents: XCTestCase { XCTFail("Response should be ResponseType.failure(GitHubAPI.ClientError.unauthorized) i.e. 401 response") } } - + func DISABLED_test_addAssignees() { - + //test that add reviewers request gets a 401 unauthorized response let addAssigneesRequest = V3AddPeopleRequest(owner: "GitHawkApp", repo: "GitHawk", @@ -55,18 +55,18 @@ class UrlPathComponents: XCTestCase { type: .assignees, add: true, people: []) - + let githubclient = GithubClient() let promise = expectation(description: "completion handler invoked") var requestResponse: GitHubAPI.Result>? - + githubclient.client.send(addAssigneesRequest) { response in requestResponse = response promise.fulfill() } - + waitForExpectations(timeout: 5, handler: nil) - + switch requestResponse! { case .failure(let error): let clientError = error as! GitHubAPI.ClientError @@ -79,4 +79,3 @@ class UrlPathComponents: XCTestCase { } } } - diff --git a/FreetimeTests/Search Tests/SearchEmptyViewTests.swift b/FreetimeTests/Search Tests/SearchEmptyViewTests.swift index a879d2ecc..b402edeb1 100644 --- a/FreetimeTests/Search Tests/SearchEmptyViewTests.swift +++ b/FreetimeTests/Search Tests/SearchEmptyViewTests.swift @@ -13,18 +13,18 @@ import XCTest class InitialEmptyViewTests: XCTestCase { var initialEmptyView: InitialEmptyView! - var mockDelegate: MockInitialEmptyViewDelegate! + var mockDelegateObject: MockInitialEmptyViewDelegate! override func setUp() { super.setUp() - mockDelegate = MockInitialEmptyViewDelegate() + mockDelegateObject = MockInitialEmptyViewDelegate() initialEmptyView = InitialEmptyView(imageName: "repo", title: "repo", description: "repo") - initialEmptyView.delegate = mockDelegate + initialEmptyView.delegate = mockDelegateObject } func test_onTap() { initialEmptyView.onTap() - XCTAssertTrue(mockDelegate.didTap) + XCTAssertTrue(mockDelegateObject.didTap) } } diff --git a/FreetimeTests/SecretsTests.swift b/FreetimeTests/SecretsTests.swift index 95ea56be0..f8c83ef2a 100644 --- a/FreetimeTests/SecretsTests.swift +++ b/FreetimeTests/SecretsTests.swift @@ -10,21 +10,21 @@ import XCTest @testable import Freetime class SecretsTests: XCTestCase { - + func testSecrets() { // These tests are designed to check (on BuddyBuild) that the environment variables are // passed all the way through and can be picked up by this test (and thus the rest of the app) // // This test will fail locally if you haven't provided the keys, follow the steps in the // repo to define these or ignore these tests by de-selecting them via your scheme. - + XCTAssertNotEqual(Secrets.GitHub.clientId, "") XCTAssertNotEqual(Secrets.GitHub.clientSecret, "") XCTAssertNotEqual(Secrets.Imgur.clientId, "") - + XCTAssertNotEqual(Secrets.GitHub.clientId, "{GITHUBID}") XCTAssertNotEqual(Secrets.GitHub.clientSecret, "{GITHUBSECRET}") XCTAssertNotEqual(Secrets.Imgur.clientId, "{IMGURID}") } - + } diff --git a/FreetimeTests/SortUsers.swift b/FreetimeTests/SortUsers.swift index 029faa5a8..ce80054d9 100644 --- a/FreetimeTests/SortUsers.swift +++ b/FreetimeTests/SortUsers.swift @@ -11,7 +11,7 @@ import XCTest @testable import GitHubAPI class SortUsers: XCTestCase { - + func makeUser(_ name: String) -> V3User { return V3User( avatarUrl: URL(string: "github.com")!, @@ -21,30 +21,30 @@ class SortUsers: XCTestCase { type: .user ) } - + func test_SortWithCurrentUserFirst() { - + var users = [ "A_rnystrom", "B_basthomas", - "C_Sherlouk", + "C_Sherlouk" ].map(makeUser) - + var sorted = PeopleViewController.sortUsers( users: users, currentUser: "B_basthomas" ) - + // sorts the current user first and otherwise sorts alphabetically XCTAssertEqual(sorted[0].login, "B_basthomas") XCTAssertEqual(sorted[1].login, "A_rnystrom") XCTAssertEqual(sorted[2].login, "C_Sherlouk") - + sorted = PeopleViewController.sortUsers( users: users, currentUser: nil ) - + XCTAssertEqual(sorted[0].login, "A_rnystrom") XCTAssertEqual(sorted[1].login, "B_basthomas") XCTAssertEqual(sorted[2].login, "C_Sherlouk") diff --git a/FreetimeTests/SwitchBranches.swift b/FreetimeTests/SwitchBranches.swift index c9a90ade2..d294f0b73 100644 --- a/FreetimeTests/SwitchBranches.swift +++ b/FreetimeTests/SwitchBranches.swift @@ -19,24 +19,24 @@ class SwitchBranches: XCTestCase { "branch_3", "branch_4" ] - + var output = RepositoryBranchesViewController.arrangeBranches( selectedBranch: "master", defaultBranch: "master", branches: branches ) - + XCTAssertEqual(output[0], "master") XCTAssertEqual(output[1], "branch_1") - + output = RepositoryBranchesViewController.arrangeBranches( selectedBranch: "branch_2", defaultBranch: "branch_3", branches: branches ) - + XCTAssertEqual(output[0], "branch_2") XCTAssertEqual(output[1], "branch_3") } - + } diff --git a/FreetimeWatch Extension/Info.plist b/FreetimeWatch Extension/Info.plist index cd95701b3..734796919 100644 --- a/FreetimeWatch Extension/Info.plist +++ b/FreetimeWatch Extension/Info.plist @@ -20,8 +20,6 @@ ${GLOBAL_APP_VERSION} CFBundleVersion SEE BUILD PHASE - CLKComplicationSupportedFamilies - NSExtension NSExtensionAttributes diff --git a/Local Pods/GitHubSession/GitHubSession/GitHubSessionManager.swift b/Local Pods/GitHubSession/GitHubSession/GitHubSessionManager.swift index b7e415113..f37e30f92 100644 --- a/Local Pods/GitHubSession/GitHubSession/GitHubSessionManager.swift +++ b/Local Pods/GitHubSession/GitHubSession/GitHubSessionManager.swift @@ -21,10 +21,10 @@ public class GitHubSessionManager: NSObject { private var listeners = [ListenerWrapper]() private enum Keys { - enum v1 { static let session = "com.github.sessionmanager.session.1" } - enum v2 { static let session = "com.github.sessionmanager.session.2" } - enum v3 { static let session = "com.github.sessionmanager.shared.session" } - static let latest = v3.session + enum V1 { static let session = "com.github.sessionmanager.session.1" } + enum V2 { static let session = "com.github.sessionmanager.session.2" } + enum V3 { static let session = "com.github.sessionmanager.shared.session" } + static let latest = V3.session } private let _userSessions = NSMutableOrderedSet() @@ -40,21 +40,21 @@ public class GitHubSessionManager: NSObject { // if a migration occurs, immediately save to disk var migrated = false - if let v1data = nonSharedDefaults.object(forKey: Keys.v1.session) as? Data, + if let v1data = nonSharedDefaults.object(forKey: Keys.V1.session) as? Data, let session = NSKeyedUnarchiver.unarchiveObject(with: v1data) as? GitHubUserSession { _userSessions.add(session) // clear the outdated session format - nonSharedDefaults.removeObject(forKey: Keys.v1.session) + nonSharedDefaults.removeObject(forKey: Keys.V1.session) migrated = true - } else if let v2data = nonSharedDefaults.object(forKey: Keys.v2.session) as? Data, + } else if let v2data = nonSharedDefaults.object(forKey: Keys.V2.session) as? Data, let session = NSKeyedUnarchiver.unarchiveObject(with: v2data) as? NSOrderedSet { _userSessions.union(session) // clear the outdated session format - nonSharedDefaults.removeObject(forKey: Keys.v2.session) + nonSharedDefaults.removeObject(forKey: Keys.V2.session) migrated = true - } else if let v3data = defaults.object(forKey: Keys.v3.session) as? Data, + } else if let v3data = defaults.object(forKey: Keys.V3.session) as? Data, let session = NSKeyedUnarchiver.unarchiveObject(with: v3data) as? NSOrderedSet { _userSessions.union(session) } diff --git a/Podfile.lock b/Podfile.lock index bfca8197c..ed10cd1b9 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -52,7 +52,7 @@ PODS: - Squawk (0.1.0) - StringHelpers (0.1.0) - StyledTextKit (0.1.1) - - SwiftLint (0.24.0) + - SwiftLint (0.27.0) - SwipeCellKit (1.9.0) - Tabman (1.8.2): - AutoInsetter (~> 1.2.0) @@ -201,7 +201,7 @@ SPEC CHECKSUMS: Squawk: 7dbe029a1de47153a1722a98b787f755f2df2b3e StringHelpers: 45c48929f335fa10b9e39ef48ba32ca2a72c89a7 StyledTextKit: ea9a28a86955c16ea27f1a1a9278b004966f2bf6 - SwiftLint: a014c92b4664e8b13f380f8640a51bb1733778ba + SwiftLint: 3207c1faa2240bf8973b191820a116113cd11073 SwipeCellKit: 67c91d4641d05b7e8ff1a38f57697d8c0fbcc6cc Tabman: 69ce69b44cec1ad693b82c24cdbdf0c45915668c TUSafariActivity: afc55a00965377939107ce4fdc7f951f62454546 diff --git a/Pods/Manifest.lock b/Pods/Manifest.lock index bfca8197c..ed10cd1b9 100644 --- a/Pods/Manifest.lock +++ b/Pods/Manifest.lock @@ -52,7 +52,7 @@ PODS: - Squawk (0.1.0) - StringHelpers (0.1.0) - StyledTextKit (0.1.1) - - SwiftLint (0.24.0) + - SwiftLint (0.27.0) - SwipeCellKit (1.9.0) - Tabman (1.8.2): - AutoInsetter (~> 1.2.0) @@ -201,7 +201,7 @@ SPEC CHECKSUMS: Squawk: 7dbe029a1de47153a1722a98b787f755f2df2b3e StringHelpers: 45c48929f335fa10b9e39ef48ba32ca2a72c89a7 StyledTextKit: ea9a28a86955c16ea27f1a1a9278b004966f2bf6 - SwiftLint: a014c92b4664e8b13f380f8640a51bb1733778ba + SwiftLint: 3207c1faa2240bf8973b191820a116113cd11073 SwipeCellKit: 67c91d4641d05b7e8ff1a38f57697d8c0fbcc6cc Tabman: 69ce69b44cec1ad693b82c24cdbdf0c45915668c TUSafariActivity: afc55a00965377939107ce4fdc7f951f62454546 diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Resources b/Pods/SwiftLint/SwiftLintFramework.framework/Resources deleted file mode 120000 index 953ee36f3..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Resources +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Resources \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/SwiftLintFramework b/Pods/SwiftLint/SwiftLintFramework.framework/SwiftLintFramework deleted file mode 120000 index a6d89846b..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/SwiftLintFramework +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/SwiftLintFramework \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Commandant b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Commandant deleted file mode 120000 index 9c4b622aa..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Commandant +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Commandant \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Resources b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Resources deleted file mode 120000 index 953ee36f3..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Resources +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Resources \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Versions/A/Commandant b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Versions/A/Commandant deleted file mode 100755 index 1ee3a5419..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Versions/A/Commandant and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Versions/A/Resources/Info.plist b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Versions/A/Resources/Info.plist deleted file mode 100644 index 3faacea9d..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Versions/A/Resources/Info.plist +++ /dev/null @@ -1,46 +0,0 @@ - - - - - BuildMachineOSBuild - 16G29 - CFBundleDevelopmentRegion - en - CFBundleExecutable - Commandant - CFBundleIdentifier - org.carthage.Commandant - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - Commandant - CFBundlePackageType - FMWK - CFBundleShortVersionString - 0.12.0 - CFBundleSignature - ???? - CFBundleSupportedPlatforms - - MacOSX - - CFBundleVersion - 1 - DTCompiler - com.apple.compilers.llvm.clang.1_0 - DTPlatformBuild - 9B55 - DTPlatformVersion - GM - DTSDKBuild - 17B41 - DTSDKName - macosx10.13 - DTXcode - 0910 - DTXcodeBuild - 9B55 - NSHumanReadableCopyright - Copyright © 2014 Carthage. All rights reserved. - - diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Versions/Current b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Versions/Current deleted file mode 120000 index 8c7e5a667..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Commandant.framework/Versions/Current +++ /dev/null @@ -1 +0,0 @@ -A \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Resources b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Resources deleted file mode 120000 index 953ee36f3..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Resources +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Resources \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Result b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Result deleted file mode 120000 index d95252cea..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Result +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Result \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Versions/A/Resources/Info.plist b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Versions/A/Resources/Info.plist deleted file mode 100644 index 56aecb8cb..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Versions/A/Resources/Info.plist +++ /dev/null @@ -1,46 +0,0 @@ - - - - - BuildMachineOSBuild - 16G29 - CFBundleDevelopmentRegion - en - CFBundleExecutable - Result - CFBundleIdentifier - com.antitypical.Result - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - Result - CFBundlePackageType - FMWK - CFBundleShortVersionString - 3.2.4 - CFBundleSignature - ???? - CFBundleSupportedPlatforms - - MacOSX - - CFBundleVersion - 1 - DTCompiler - com.apple.compilers.llvm.clang.1_0 - DTPlatformBuild - 9B55 - DTPlatformVersion - GM - DTSDKBuild - 17B41 - DTSDKName - macosx10.13 - DTXcode - 0910 - DTXcodeBuild - 9B55 - NSHumanReadableCopyright - Copyright © 2015 Rob Rix. All rights reserved. - - diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Versions/A/Result b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Versions/A/Result deleted file mode 100755 index 5066f14e0..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Versions/A/Result and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Versions/Current b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Versions/Current deleted file mode 120000 index 8c7e5a667..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Result.framework/Versions/Current +++ /dev/null @@ -1 +0,0 @@ -A \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/Resources b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/Resources deleted file mode 120000 index 953ee36f3..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/Resources +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Resources \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/SWXMLHash b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/SWXMLHash deleted file mode 120000 index fb92f1c8e..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/SWXMLHash +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/SWXMLHash \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/Versions/A/Resources/Info.plist b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/Versions/A/Resources/Info.plist deleted file mode 100644 index 2e4c16ab0..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/Versions/A/Resources/Info.plist +++ /dev/null @@ -1,49 +0,0 @@ - - - - - BuildMachineOSBuild - 16G29 - CFBundleDevelopmentRegion - en - CFBundleExecutable - SWXMLHash - CFBundleIdentifier - drmohundro.SWXMLHash - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - SWXMLHash - CFBundlePackageType - FMWK - CFBundleShortVersionString - 2.0 - CFBundleSignature - ???? - CFBundleSupportedPlatforms - - MacOSX - - CFBundleVersion - 1 - DTCompiler - com.apple.compilers.llvm.clang.1_0 - DTPlatformBuild - 9B55 - DTPlatformVersion - GM - DTSDKBuild - 17B41 - DTSDKName - macosx10.13 - DTXcode - 0910 - DTXcodeBuild - 9B55 - UIDeviceFamily - - 1 - 2 - - - diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/Versions/A/SWXMLHash b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/Versions/A/SWXMLHash deleted file mode 100755 index 31e1dc09d..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/Versions/A/SWXMLHash and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/Versions/Current b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/Versions/Current deleted file mode 120000 index 8c7e5a667..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SWXMLHash.framework/Versions/Current +++ /dev/null @@ -1 +0,0 @@ -A \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/Resources b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/Resources deleted file mode 120000 index 953ee36f3..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/Resources +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Resources \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/SourceKittenFramework b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/SourceKittenFramework deleted file mode 120000 index e339a3957..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/SourceKittenFramework +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/SourceKittenFramework \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/Versions/A/Resources/Info.plist b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/Versions/A/Resources/Info.plist deleted file mode 100644 index 0d899a886..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/Versions/A/Resources/Info.plist +++ /dev/null @@ -1,46 +0,0 @@ - - - - - BuildMachineOSBuild - 16G29 - CFBundleDevelopmentRegion - en - CFBundleExecutable - SourceKittenFramework - CFBundleIdentifier - com.sourcekitten.SourceKittenFramework - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - SourceKittenFramework - CFBundlePackageType - FMWK - CFBundleShortVersionString - 0.18.4 - CFBundleSignature - ???? - CFBundleSupportedPlatforms - - MacOSX - - CFBundleVersion - 1 - DTCompiler - com.apple.compilers.llvm.clang.1_0 - DTPlatformBuild - 9B55 - DTPlatformVersion - GM - DTSDKBuild - 17B41 - DTSDKName - macosx10.13 - DTXcode - 0910 - DTXcodeBuild - 9B55 - NSHumanReadableCopyright - Copyright © 2015 SourceKitten. All rights reserved. - - diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/Versions/A/SourceKittenFramework b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/Versions/A/SourceKittenFramework deleted file mode 100755 index 22f048ee7..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/Versions/A/SourceKittenFramework and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/Versions/Current b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/Versions/Current deleted file mode 120000 index 8c7e5a667..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SourceKittenFramework.framework/Versions/Current +++ /dev/null @@ -1 +0,0 @@ -A \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/Resources b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/Resources deleted file mode 120000 index 953ee36f3..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/Resources +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Resources \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/SwiftyTextTable b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/SwiftyTextTable deleted file mode 120000 index ebb760f75..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/SwiftyTextTable +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/SwiftyTextTable \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/Versions/A/Resources/Info.plist b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/Versions/A/Resources/Info.plist deleted file mode 100644 index 468344965..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/Versions/A/Resources/Info.plist +++ /dev/null @@ -1,46 +0,0 @@ - - - - - BuildMachineOSBuild - 16G29 - CFBundleDevelopmentRegion - en - CFBundleExecutable - SwiftyTextTable - CFBundleIdentifier - com.scotthoyt.SwiftyTextTable - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - SwiftyTextTable - CFBundlePackageType - FMWK - CFBundleShortVersionString - 0.1.0 - CFBundleSignature - ???? - CFBundleSupportedPlatforms - - MacOSX - - CFBundleVersion - 1 - DTCompiler - com.apple.compilers.llvm.clang.1_0 - DTPlatformBuild - 9B55 - DTPlatformVersion - GM - DTSDKBuild - 17B41 - DTSDKName - macosx10.13 - DTXcode - 0910 - DTXcodeBuild - 9B55 - NSHumanReadableCopyright - Copyright © 2016 Scott Hoyt. All rights reserved. - - diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/Versions/A/SwiftyTextTable b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/Versions/A/SwiftyTextTable deleted file mode 100755 index c5d46cdf5..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/Versions/A/SwiftyTextTable and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/Versions/Current b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/Versions/Current deleted file mode 120000 index 8c7e5a667..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/SwiftyTextTable.framework/Versions/Current +++ /dev/null @@ -1 +0,0 @@ -A \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Resources b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Resources deleted file mode 120000 index 953ee36f3..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Resources +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Resources \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Versions/A/Resources/Info.plist b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Versions/A/Resources/Info.plist deleted file mode 100644 index 893e9706d..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Versions/A/Resources/Info.plist +++ /dev/null @@ -1,44 +0,0 @@ - - - - - BuildMachineOSBuild - 16G29 - CFBundleDevelopmentRegion - en - CFBundleExecutable - Yams - CFBundleIdentifier - Yams - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - Yams - CFBundlePackageType - FMWK - CFBundleShortVersionString - 0.4.1 - CFBundleSignature - ???? - CFBundleSupportedPlatforms - - MacOSX - - CFBundleVersion - 1 - DTCompiler - com.apple.compilers.llvm.clang.1_0 - DTPlatformBuild - 9B55 - DTPlatformVersion - GM - DTSDKBuild - 17B41 - DTSDKName - macosx10.13 - DTXcode - 0910 - DTXcodeBuild - 9B55 - - diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Versions/A/Yams b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Versions/A/Yams deleted file mode 100755 index 69d8549d6..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Versions/A/Yams and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Versions/Current b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Versions/Current deleted file mode 120000 index 8c7e5a667..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Versions/Current +++ /dev/null @@ -1 +0,0 @@ -A \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Yams b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Yams deleted file mode 120000 index 151b404ac..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/Yams.framework/Yams +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Yams \ No newline at end of file diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftCore.dylib b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftCore.dylib deleted file mode 100755 index 674d2c980..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftCore.dylib and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftCoreFoundation.dylib b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftCoreFoundation.dylib deleted file mode 100755 index 10b22d622..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftCoreFoundation.dylib and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftCoreGraphics.dylib b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftCoreGraphics.dylib deleted file mode 100755 index 401880b09..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftCoreGraphics.dylib and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftDarwin.dylib b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftDarwin.dylib deleted file mode 100755 index 7e2123691..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftDarwin.dylib and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftDispatch.dylib b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftDispatch.dylib deleted file mode 100755 index aec5fdd44..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftDispatch.dylib and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftFoundation.dylib b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftFoundation.dylib deleted file mode 100755 index 2bffa940d..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftFoundation.dylib and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftIOKit.dylib b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftIOKit.dylib deleted file mode 100755 index 872022e05..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftIOKit.dylib and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftObjectiveC.dylib b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftObjectiveC.dylib deleted file mode 100755 index 6b20e8301..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Frameworks/libswiftObjectiveC.dylib and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Resources/Info.plist b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Resources/Info.plist deleted file mode 100644 index 17472dd68..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/Resources/Info.plist +++ /dev/null @@ -1,46 +0,0 @@ - - - - - BuildMachineOSBuild - 16G29 - CFBundleDevelopmentRegion - en - CFBundleExecutable - SwiftLintFramework - CFBundleIdentifier - io.realm.SwiftLintFramework - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - SwiftLintFramework - CFBundlePackageType - FMWK - CFBundleShortVersionString - 0.24.0 - CFBundleSignature - ???? - CFBundleSupportedPlatforms - - MacOSX - - CFBundleVersion - 1 - DTCompiler - com.apple.compilers.llvm.clang.1_0 - DTPlatformBuild - 9B55 - DTPlatformVersion - GM - DTSDKBuild - 17B41 - DTSDKName - macosx10.13 - DTXcode - 0910 - DTXcodeBuild - 9B55 - NSHumanReadableCopyright - Copyright © 2015 Realm. All rights reserved. - - diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/SwiftLintFramework b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/SwiftLintFramework deleted file mode 100755 index 2830c8abe..000000000 Binary files a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/A/SwiftLintFramework and /dev/null differ diff --git a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/Current b/Pods/SwiftLint/SwiftLintFramework.framework/Versions/Current deleted file mode 120000 index 8c7e5a667..000000000 --- a/Pods/SwiftLint/SwiftLintFramework.framework/Versions/Current +++ /dev/null @@ -1 +0,0 @@ -A \ No newline at end of file diff --git a/Pods/SwiftLint/swiftlint b/Pods/SwiftLint/swiftlint index ac3892057..096b9f87c 100755 Binary files a/Pods/SwiftLint/swiftlint and b/Pods/SwiftLint/swiftlint differ