{"action":"created","issue":{"url":"https://api.github.com/repos/apple/swift-corelibs-foundation/issues/127","repository_url":"https://api.github.com/repos/apple/swift-corelibs-foundation","labels_url":"https://api.github.com/repos/apple/swift-corelibs-foundation/issues/127/labels{/name}","comments_url":"https://api.github.com/repos/apple/swift-corelibs-foundation/issues/127/comments","events_url":"https://api.github.com/repos/apple/swift-corelibs-foundation/issues/127/events","html_url":"https://github.com/apple/swift-corelibs-foundation/pull/127","id":121645300,"number":127,"title":"Add block/boolean NSPredicates, NSCompoundPredicate, and NSArray predicate method","user":{"login":"klundberg","id":867898,"avatar_url":"https://avatars.githubusercontent.com/u/867898?v=3","gravatar_id":"","url":"https://api.github.com/users/klundberg","html_url":"https://github.com/klundberg","followers_url":"https://api.github.com/users/klundberg/followers","following_url":"https://api.github.com/users/klundberg/following{/other_user}","gists_url":"https://api.github.com/users/klundberg/gists{/gist_id}","starred_url":"https://api.github.com/users/klundberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klundberg/subscriptions","organizations_url":"https://api.github.com/users/klundberg/orgs","repos_url":"https://api.github.com/users/klundberg/repos","events_url":"https://api.github.com/users/klundberg/events{/privacy}","received_events_url":"https://api.github.com/users/klundberg/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/apple/swift-corelibs-foundation/labels/changes%20requested","name":"changes requested","color":"fbca04"},{"url":"https://api.github.com/repos/apple/swift-corelibs-foundation/labels/compiler%20bug%20detected","name":"compiler bug detected","color":"5319e7"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2015-12-11T06:11:15Z","updated_at":"2016-03-29T00:37:55Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apple/swift-corelibs-foundation/pulls/127","html_url":"https://github.com/apple/swift-corelibs-foundation/pull/127","diff_url":"https://github.com/apple/swift-corelibs-foundation/pull/127.diff","patch_url":"https://github.com/apple/swift-corelibs-foundation/pull/127.patch"},"body":"I added some of the NSPredicate implementation, including block predicates and true/false predicates, NSCompoundPredicate (which should be complete I believe), and an implementation to NSArray.filteredArrayUsingPredicate.\r\n\r\nMy current simple NSPredicate work only works with nil for substitution bindings since I don't fully understand how those work yet, or if they're even applicable to block based predicates.\r\n\r\n\"Not\" compound predicates trigger a precondition if the array of subpredicates is empty. This is similar to what happens in Foundation on Apple platforms."},"comment":{"url":"https://api.github.com/repos/apple/swift-corelibs-foundation/issues/comments/202646287","html_url":"https://github.com/apple/swift-corelibs-foundation/pull/127#issuecomment-202646287","issue_url":"https://api.github.com/repos/apple/swift-corelibs-foundation/issues/127","id":202646287,"user":{"login":"klundberg","id":867898,"avatar_url":"https://avatars.githubusercontent.com/u/867898?v=3","gravatar_id":"","url":"https://api.github.com/users/klundberg","html_url":"https://github.com/klundberg","followers_url":"https://api.github.com/users/klundberg/followers","following_url":"https://api.github.com/users/klundberg/following{/other_user}","gists_url":"https://api.github.com/users/klundberg/gists{/gist_id}","starred_url":"https://api.github.com/users/klundberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klundberg/subscriptions","organizations_url":"https://api.github.com/users/klundberg/orgs","repos_url":"https://api.github.com/users/klundberg/repos","events_url":"https://api.github.com/users/klundberg/events{/privacy}","received_events_url":"https://api.github.com/users/klundberg/received_events","type":"User","site_admin":false},"created_at":"2016-03-29T00:37:55Z","updated_at":"2016-03-29T00:37:55Z","body":"I can certainly rebase with master and test again in the next couple of days. If the API changes to this are still necessary to work around the crash (changes i would argue are warranted even if the crash is fixed), is it OK to leave them in?"}}