{"action":"created","comment":{"url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls/comments/205415732","pull_request_review_id":140678663,"id":205415732,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwNTQxNTczMg==","diff_hunk":"@@ -0,0 +1,29 @@\n+//\n+//  UIRefreshControlExtensions.swift\n+//  SwifterSwift\n+//\n+//  Created by ratul sharker on 7/24/18.\n+//  Copyright © 2018 SwifterSwift\n+//\n+\n+#if canImport(UIKit)\n+import UIKit\n+\n+#if !os(watchOS)\n+// MARK: - Methods\n+public extension UIRefreshControl {\n+\n+    /// SwifterSwift: Programatically begin refresh control inside of UITableView.\n+    ///\n+    /// - Parameter tableView: UITableView instance, inside which the refresh control is contained.\n+    public func beginRefreshProgramatically(in tableView: UITableView) {\n+        //https://stackoverflow.com/questions/14718850/uirefreshcontrol-beginrefreshing-not-working-when-uitableviewcontroller-is-ins/14719658#14719658\n+        beginRefreshing()\n+        let offsetPoint = CGPoint(x: 0, y: -frame.height)\n+        tableView.setContentOffset(offsetPoint, animated: true)","path":"Sources/Extensions/UIKit/UIRefreshControlExtensions.swift","position":23,"original_position":23,"commit_id":"ead98f5fca62bcae6d1b362e2ed1a752c0244e5c","original_commit_id":"ead98f5fca62bcae6d1b362e2ed1a752c0244e5c","user":{"login":"guykogus","id":924764,"node_id":"MDQ6VXNlcjkyNDc2NA==","avatar_url":"https://avatars2.githubusercontent.com/u/924764?v=4","gravatar_id":"","url":"https://api.github.com/users/guykogus","html_url":"https://github.com/guykogus","followers_url":"https://api.github.com/users/guykogus/followers","following_url":"https://api.github.com/users/guykogus/following{/other_user}","gists_url":"https://api.github.com/users/guykogus/gists{/gist_id}","starred_url":"https://api.github.com/users/guykogus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guykogus/subscriptions","organizations_url":"https://api.github.com/users/guykogus/orgs","repos_url":"https://api.github.com/users/guykogus/repos","events_url":"https://api.github.com/users/guykogus/events{/privacy}","received_events_url":"https://api.github.com/users/guykogus/received_events","type":"User","site_admin":false},"body":"1. I agree that we can easily create an assert for it.\r\n2. You're right, the user might have added the RC as a subview so my check would have failed (it wouldn't have crashed because of the `guard`, though). That's easily fixed.\r\n3. The user will be calling the function the same way. They won't need to call `beginRefreshing` themselves if they use the TV extension, but they do still need that target-action callback that calls `refreshControl.endRefreshing`, so I see your point that it makes sense to keep them together.\r\n4. Yeah, the animation timing is definitely a bad idea. If the reloading of the table view is instantaneous, which in real world apps is unlikely, then they just won't see the refresh control, it'll scroll back up to the top and the user can keep using the table view instantly.\r\n5. I think it's fine to just use `beginRefreshing` for the name. The user will see the difference between the original and the extension because of the parameters.\r\n\r\nBased on your points, I suggest this extension:\r\n```Swift\r\nextension UIRefreshControl {\r\n    public func beginRefreshing(in tableView: UITableView, animated: Bool = true) {\r\n        let isSubView = {\r\n            tableView.subviews.contains(where: { $0 == self })\r\n        }\r\n        if #available(iOS 10.0, *) {\r\n            assert(isSubView() || tableView.refreshControl == self, \"Refresh control does not belong to the receiving table view\")\r\n        } else {\r\n            assert(isSubView(), \"Refresh control does not belong to the receiving table view\")\r\n        }\r\n\r\n        beginRefreshing()\r\n        let offsetPoint = CGPoint(x: 0, y: -frame.height)\r\n        tableView.setContentOffset(offsetPoint, animated: animated)\r\n\r\n        sendActions(for: .valueChanged)\r\n    }\r\n}\r\n```\r\n`isSubview` is a closure because on non-debug builds (where `assert` isn't executed) we don't want to actually perform the calculation. Chances are that the number of subviews will be small, but why risk a potentially heavy calculation?\r\n\r\nIt works perfectly in my test VC:\r\n\r\n```Swift\r\nclass ViewController: UIViewController, UITableViewDataSource {\r\n    @IBOutlet weak var tableView: UITableView!\r\n\r\n    var refreshControl: UIRefreshControl!\r\n\r\n    override func viewDidLoad() {\r\n        super.viewDidLoad()\r\n\r\n        refreshControl = UIRefreshControl(frame: CGRect(origin: .zero, size: CGSize(width: view.frame.width, height: 44)))\r\n        refreshControl.addTarget(self, action: #selector(refresh(_:)), for: [.valueChanged])\r\n        if #available(iOS 10.0, *) {\r\n            tableView.refreshControl = refreshControl\r\n        } else {\r\n            tableView.addSubview(refreshControl)\r\n        }\r\n    }\r\n\r\n    override func viewDidAppear(_ animated: Bool) {\r\n        super.viewDidAppear(animated)\r\n        refreshControl.beginRefreshing(in: tableView)\r\n    }\r\n\r\n    @objc func refresh(_ sender: UIRefreshControl) {\r\n        // Wait to show the RC\r\n        DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) { [weak self] in\r\n            self?.refreshControl.endRefreshing()\r\n        }\r\n    }\r\n\r\n    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {\r\n        return 500\r\n    }\r\n\r\n    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {\r\n        let cell = tableView.dequeueReusableCell(withIdentifier: \"Cell\", for: indexPath)\r\n        cell.textLabel?.text = indexPath.description\r\n        return cell\r\n    }\r\n}\r\n```\r\n\r\nThoughts?","created_at":"2018-07-26T11:04:35Z","updated_at":"2018-07-26T11:04:35Z","html_url":"https://github.com/SwifterSwift/SwifterSwift/pull/525#discussion_r205415732","pull_request_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls/525","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls/comments/205415732"},"html":{"href":"https://github.com/SwifterSwift/SwifterSwift/pull/525#discussion_r205415732"},"pull_request":{"href":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls/525"}},"in_reply_to_id":204830156},"pull_request":{"url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls/525","id":203403965,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAzNDAzOTY1","html_url":"https://github.com/SwifterSwift/SwifterSwift/pull/525","diff_url":"https://github.com/SwifterSwift/SwifterSwift/pull/525.diff","patch_url":"https://github.com/SwifterSwift/SwifterSwift/pull/525.patch","issue_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/issues/525","number":525,"state":"open","locked":false,"title":"UIRefreshControl extension added to begin refresh programatically.","user":{"login":"ratulSharker","id":5053324,"node_id":"MDQ6VXNlcjUwNTMzMjQ=","avatar_url":"https://avatars3.githubusercontent.com/u/5053324?v=4","gravatar_id":"","url":"https://api.github.com/users/ratulSharker","html_url":"https://github.com/ratulSharker","followers_url":"https://api.github.com/users/ratulSharker/followers","following_url":"https://api.github.com/users/ratulSharker/following{/other_user}","gists_url":"https://api.github.com/users/ratulSharker/gists{/gist_id}","starred_url":"https://api.github.com/users/ratulSharker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ratulSharker/subscriptions","organizations_url":"https://api.github.com/users/ratulSharker/orgs","repos_url":"https://api.github.com/users/ratulSharker/repos","events_url":"https://api.github.com/users/ratulSharker/events{/privacy}","received_events_url":"https://api.github.com/users/ratulSharker/received_events","type":"User","site_admin":false},"body":"<!--- Provide a general summary of your changes in the Title above -->\r\n\r\n## Checklist\r\n<!--- Please go over all the following points, and put an `x` in all the boxes that apply. -->\r\n<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->\r\n- [x] I checked the [**Contributing Guidelines**](https://github.com/SwifterSwift/SwifterSwift/blob/master/CONTRIBUTING.md) before creating this request.\r\n- [x] New extensions are written in Swift 4.\r\n- [x] New extensions support iOS 8.0+ / tvOS 9.0+ / macOS 10.10+ / watchOS 2.0+.\r\n- [x] I have added tests for new extensions, and they passed.\r\n- [x] All extensions have a **clear** comments explaining their functionality, all parameters and return type in English.\r\n- [x] All extensions are declared as **public**.\r\n- [x] I have added a [changelog](https://github.com/SwifterSwift/SwifterSwift/blob/master/CHANGELOG_GUIDELINES.md)\r\n\r\nWhen a UIRefreshControl is added as a subview inside of UITableView, then calling the `beginRefresh` method does not show up the UIRefreshControl inside the UITableView. Developer had to manually change the content offset of the UITableView instance.\r\n\r\nSource: [Stack Overflow](https://stackoverflow.com/questions/14718850/uirefreshcontrol-beginrefreshing-not-working-when-uitableviewcontroller-is-ins/14719658#14719658)\r\n","created_at":"2018-07-24T04:02:29Z","updated_at":"2018-07-26T11:04:35Z","closed_at":null,"merged_at":null,"merge_commit_sha":"576f4824c752ee25d83432ea553015ee14ff70f6","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls/525/commits","review_comments_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls/525/comments","review_comment_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls/comments{/number}","comments_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/issues/525/comments","statuses_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/statuses/ead98f5fca62bcae6d1b362e2ed1a752c0244e5c","head":{"label":"SwifterSwift:ratul-uirefreshcontrol-extension","ref":"ratul-uirefreshcontrol-extension","sha":"ead98f5fca62bcae6d1b362e2ed1a752c0244e5c","user":{"login":"SwifterSwift","id":25029478,"node_id":"MDEyOk9yZ2FuaXphdGlvbjI1MDI5NDc4","avatar_url":"https://avatars2.githubusercontent.com/u/25029478?v=4","gravatar_id":"","url":"https://api.github.com/users/SwifterSwift","html_url":"https://github.com/SwifterSwift","followers_url":"https://api.github.com/users/SwifterSwift/followers","following_url":"https://api.github.com/users/SwifterSwift/following{/other_user}","gists_url":"https://api.github.com/users/SwifterSwift/gists{/gist_id}","starred_url":"https://api.github.com/users/SwifterSwift/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SwifterSwift/subscriptions","organizations_url":"https://api.github.com/users/SwifterSwift/orgs","repos_url":"https://api.github.com/users/SwifterSwift/repos","events_url":"https://api.github.com/users/SwifterSwift/events{/privacy}","received_events_url":"https://api.github.com/users/SwifterSwift/received_events","type":"Organization","site_admin":false},"repo":{"id":64705781,"node_id":"MDEwOlJlcG9zaXRvcnk2NDcwNTc4MQ==","name":"SwifterSwift","full_name":"SwifterSwift/SwifterSwift","owner":{"login":"SwifterSwift","id":25029478,"node_id":"MDEyOk9yZ2FuaXphdGlvbjI1MDI5NDc4","avatar_url":"https://avatars2.githubusercontent.com/u/25029478?v=4","gravatar_id":"","url":"https://api.github.com/users/SwifterSwift","html_url":"https://github.com/SwifterSwift","followers_url":"https://api.github.com/users/SwifterSwift/followers","following_url":"https://api.github.com/users/SwifterSwift/following{/other_user}","gists_url":"https://api.github.com/users/SwifterSwift/gists{/gist_id}","starred_url":"https://api.github.com/users/SwifterSwift/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SwifterSwift/subscriptions","organizations_url":"https://api.github.com/users/SwifterSwift/orgs","repos_url":"https://api.github.com/users/SwifterSwift/repos","events_url":"https://api.github.com/users/SwifterSwift/events{/privacy}","received_events_url":"https://api.github.com/users/SwifterSwift/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/SwifterSwift/SwifterSwift","description":"A handy collection of more than 500 native Swift extensions to boost your productivity.","fork":false,"url":"https://api.github.com/repos/SwifterSwift/SwifterSwift","forks_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/forks","keys_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/keys{/key_id}","collaborators_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/teams","hooks_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/hooks","issue_events_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/issues/events{/number}","events_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/events","assignees_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/assignees{/user}","branches_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/branches{/branch}","tags_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/tags","blobs_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/git/refs{/sha}","trees_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/git/trees{/sha}","statuses_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/statuses/{sha}","languages_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/languages","stargazers_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/stargazers","contributors_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/contributors","subscribers_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/subscribers","subscription_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/subscription","commits_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/commits{/sha}","git_commits_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/git/commits{/sha}","comments_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/comments{/number}","issue_comment_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/issues/comments{/number}","contents_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/contents/{+path}","compare_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/compare/{base}...{head}","merges_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/merges","archive_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/downloads","issues_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/issues{/number}","pulls_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls{/number}","milestones_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/milestones{/number}","notifications_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/labels{/name}","releases_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/releases{/id}","deployments_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/deployments","created_at":"2016-08-01T22:25:24Z","updated_at":"2018-07-26T10:53:51Z","pushed_at":"2018-07-25T17:03:00Z","git_url":"git://github.com/SwifterSwift/SwifterSwift.git","ssh_url":"git@github.com:SwifterSwift/SwifterSwift.git","clone_url":"https://github.com/SwifterSwift/SwifterSwift.git","svn_url":"https://github.com/SwifterSwift/SwifterSwift","homepage":"https://swifterswift.com","size":14156,"stargazers_count":5830,"watchers_count":5830,"language":"Swift","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":599,"mirror_url":null,"archived":false,"open_issues_count":20,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":599,"open_issues":20,"watchers":5830,"default_branch":"master"}},"base":{"label":"SwifterSwift:master","ref":"master","sha":"817a58012f2fbc6d297c99092949c45c37a8609f","user":{"login":"SwifterSwift","id":25029478,"node_id":"MDEyOk9yZ2FuaXphdGlvbjI1MDI5NDc4","avatar_url":"https://avatars2.githubusercontent.com/u/25029478?v=4","gravatar_id":"","url":"https://api.github.com/users/SwifterSwift","html_url":"https://github.com/SwifterSwift","followers_url":"https://api.github.com/users/SwifterSwift/followers","following_url":"https://api.github.com/users/SwifterSwift/following{/other_user}","gists_url":"https://api.github.com/users/SwifterSwift/gists{/gist_id}","starred_url":"https://api.github.com/users/SwifterSwift/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SwifterSwift/subscriptions","organizations_url":"https://api.github.com/users/SwifterSwift/orgs","repos_url":"https://api.github.com/users/SwifterSwift/repos","events_url":"https://api.github.com/users/SwifterSwift/events{/privacy}","received_events_url":"https://api.github.com/users/SwifterSwift/received_events","type":"Organization","site_admin":false},"repo":{"id":64705781,"node_id":"MDEwOlJlcG9zaXRvcnk2NDcwNTc4MQ==","name":"SwifterSwift","full_name":"SwifterSwift/SwifterSwift","owner":{"login":"SwifterSwift","id":25029478,"node_id":"MDEyOk9yZ2FuaXphdGlvbjI1MDI5NDc4","avatar_url":"https://avatars2.githubusercontent.com/u/25029478?v=4","gravatar_id":"","url":"https://api.github.com/users/SwifterSwift","html_url":"https://github.com/SwifterSwift","followers_url":"https://api.github.com/users/SwifterSwift/followers","following_url":"https://api.github.com/users/SwifterSwift/following{/other_user}","gists_url":"https://api.github.com/users/SwifterSwift/gists{/gist_id}","starred_url":"https://api.github.com/users/SwifterSwift/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SwifterSwift/subscriptions","organizations_url":"https://api.github.com/users/SwifterSwift/orgs","repos_url":"https://api.github.com/users/SwifterSwift/repos","events_url":"https://api.github.com/users/SwifterSwift/events{/privacy}","received_events_url":"https://api.github.com/users/SwifterSwift/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/SwifterSwift/SwifterSwift","description":"A handy collection of more than 500 native Swift extensions to boost your productivity.","fork":false,"url":"https://api.github.com/repos/SwifterSwift/SwifterSwift","forks_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/forks","keys_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/keys{/key_id}","collaborators_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/teams","hooks_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/hooks","issue_events_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/issues/events{/number}","events_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/events","assignees_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/assignees{/user}","branches_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/branches{/branch}","tags_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/tags","blobs_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/git/refs{/sha}","trees_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/git/trees{/sha}","statuses_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/statuses/{sha}","languages_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/languages","stargazers_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/stargazers","contributors_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/contributors","subscribers_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/subscribers","subscription_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/subscription","commits_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/commits{/sha}","git_commits_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/git/commits{/sha}","comments_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/comments{/number}","issue_comment_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/issues/comments{/number}","contents_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/contents/{+path}","compare_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/compare/{base}...{head}","merges_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/merges","archive_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/downloads","issues_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/issues{/number}","pulls_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls{/number}","milestones_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/milestones{/number}","notifications_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/labels{/name}","releases_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/releases{/id}","deployments_url":"https://api.github.com/repos/SwifterSwift/SwifterSwift/deployments","created_at":"2016-08-01T22:25:24Z","updated_at":"2018-07-26T10:53:51Z","pushed_at":"2018-07-25T17:03:00Z","git_url":"git://github.com/SwifterSwift/SwifterSwift.git","ssh_url":"git@github.com:SwifterSwift/SwifterSwift.git","clone_url":"https://github.com/SwifterSwift/SwifterSwift.git","svn_url":"https://github.com/SwifterSwift/SwifterSwift","homepage":"https://swifterswift.com","size":14156,"stargazers_count":5830,"watchers_count":5830,"language":"Swift","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":599,"mirror_url":null,"archived":false,"open_issues_count":20,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":599,"open_issues":20,"watchers":5830,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls/525"},"html":{"href":"https://github.com/SwifterSwift/SwifterSwift/pull/525"},"issue":{"href":"https://api.github.com/repos/SwifterSwift/SwifterSwift/issues/525"},"comments":{"href":"https://api.github.com/repos/SwifterSwift/SwifterSwift/issues/525/comments"},"review_comments":{"href":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls/525/comments"},"review_comment":{"href":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/SwifterSwift/SwifterSwift/pulls/525/commits"},"statuses":{"href":"https://api.github.com/repos/SwifterSwift/SwifterSwift/statuses/ead98f5fca62bcae6d1b362e2ed1a752c0244e5c"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"guykogus"}}