{"action":"created","issue":{"url":"https://api.github.com/repos/jonschlinkert/extglob/issues/4","repository_url":"https://api.github.com/repos/jonschlinkert/extglob","labels_url":"https://api.github.com/repos/jonschlinkert/extglob/issues/4/labels{/name}","comments_url":"https://api.github.com/repos/jonschlinkert/extglob/issues/4/comments","events_url":"https://api.github.com/repos/jonschlinkert/extglob/issues/4/events","html_url":"https://github.com/jonschlinkert/extglob/issues/4","id":175001774,"number":4,"title":"questionable patterns","user":{"login":"jonschlinkert","id":383994,"avatar_url":"https://avatars.githubusercontent.com/u/383994?v=3","gravatar_id":"","url":"https://api.github.com/users/jonschlinkert","html_url":"https://github.com/jonschlinkert","followers_url":"https://api.github.com/users/jonschlinkert/followers","following_url":"https://api.github.com/users/jonschlinkert/following{/other_user}","gists_url":"https://api.github.com/users/jonschlinkert/gists{/gist_id}","starred_url":"https://api.github.com/users/jonschlinkert/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonschlinkert/subscriptions","organizations_url":"https://api.github.com/users/jonschlinkert/orgs","repos_url":"https://api.github.com/users/jonschlinkert/repos","events_url":"https://api.github.com/users/jonschlinkert/events{/privacy}","received_events_url":"https://api.github.com/users/jonschlinkert/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":10,"created_at":"2016-09-05T06:13:42Z","updated_at":"2016-10-20T21:15:02Z","closed_at":"2016-10-20T21:15:02Z","body":"While working on the [refactor](https://github.com/jonschlinkert/extglob/pull/5), these were the only patterns where Bash 4.3 disagreed with the results from this library. (fwiw minimatch fails 37 of the these tests).\r\n\r\nI believe extglob is correct on most of these - this is only a few patterns with multiple examples for clarity (for example, IMHO `!(foo)*` should not match `foo`). I'd like some feedback on what the \"verdict\" should be.\r\n\r\n_edited 2016-10-17: most of these now agree. I realized that (in most of the listed cases) Bash is doing a \"contains\" match versus an \"exact\" match. Also, fwiw minimatch agrees with extglob on all cases except for the one minimatch fails on (which extglob and bash agree on). Unfortunately I've not been able to identify a specific reason that bash or minimatch disagree with this library on any cases - but it's clear that extglob is much more accurate than minimatch, and it appears that extglob is also more accurate than bash (it's known that bash still fails some edge cases)_.\r\n\r\n**String**  | **Pattern**      | **Bash** | **Extglob** | **Minimatch** | **Agreed?**\r\n---         | ---              | ---      | ---         | ---           | ---\r\nfoo         | `!(foo)*`        | true     | true        | true          | ✓\r\nbar         | `!(foo)*`        | true     | true        | true          | ✓\r\nbaz         | `!(foo)*`        | true     | true        | true          | ✓\r\nfoobar      | `!(foo)*`        | true     | true        | true          | ✓\r\nfoo         | `*(!(foo))`      | true     | false       | true          | ✓\r\nmoo.cow     | `!(*.*).!(*.*)`  | true     | true        | true          | ✓\r\nmad.moo.cow | `!(*.*).!(*.*)`  | false    | true        | true          | X\r\nfoo.js.js   | `*.!(js)`        | true     | true        | true          | ✓\r\nfoo.js.js   | `*.!(js)*`       | true     | false       | false         | X\r\nfoo.js.js   | `*.!(js)+`       | false    | false       | false         | ✓\r\nfoo.js.js   | `*.!(js)*.!(js)` | false    | false       | false         | ✓\r\n\r\n**Notes**\r\n\r\nOne thing to consider is that whereas in bash, the extglob pattern might be the complete pattern, with this library the pattern is more likely to be a part of a larger glob pattern for testing file paths, etc. \r\n\r\ncc @phated @doowb @tunnckoCore"},"comment":{"url":"https://api.github.com/repos/jonschlinkert/extglob/issues/comments/255230454","html_url":"https://github.com/jonschlinkert/extglob/issues/4#issuecomment-255230454","issue_url":"https://api.github.com/repos/jonschlinkert/extglob/issues/4","id":255230454,"user":{"login":"jonschlinkert","id":383994,"avatar_url":"https://avatars.githubusercontent.com/u/383994?v=3","gravatar_id":"","url":"https://api.github.com/users/jonschlinkert","html_url":"https://github.com/jonschlinkert","followers_url":"https://api.github.com/users/jonschlinkert/followers","following_url":"https://api.github.com/users/jonschlinkert/following{/other_user}","gists_url":"https://api.github.com/users/jonschlinkert/gists{/gist_id}","starred_url":"https://api.github.com/users/jonschlinkert/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonschlinkert/subscriptions","organizations_url":"https://api.github.com/users/jonschlinkert/orgs","repos_url":"https://api.github.com/users/jonschlinkert/repos","events_url":"https://api.github.com/users/jonschlinkert/events{/privacy}","received_events_url":"https://api.github.com/users/jonschlinkert/received_events","type":"User","site_admin":false},"created_at":"2016-10-20T21:15:02Z","updated_at":"2016-10-20T21:15:02Z","body":"closing, I think this is resolved"}}
{"actor":{"display_login":"jonschlinkert"}}