{"action":"created","comment":{"url":"https://api.github.com/repos/yahoo/atomizer/pulls/comments/35899045","id":35899045,"diff_hunk":"@@ -78,7 +78,13 @@ JSS.combineSelectors = function (extracted/*:Extracted*/)/*:Extracted*/ {\n     for (var block in extracted) {\n         extracts = extracted[block];\n         for (var i = 0, l = extracts.length; i < l; i += 1) {\n+            // If this selector has an escaped colon, we can't safely combine it\n+            // with another selector since it will break in IE < 8\n+            if (extracts[i].selector && extracts[i].selector.indexOf('\\:') > -1) { continue; }\n             for(var j = i + 1; j < l; j += 1) {\n+                // If this selector has an escaped colon, we can't safely combine it\n+                // with another selector since it will break in IE < 8\n+                if (extracts[j].selector && extracts[j].selector.indexOf('\\:') > -1) { continue; }","path":"src/lib/jss.js","position":10,"original_position":10,"commit_id":"832153ced0511d82d293da9b090790fb641fc8a1","original_commit_id":"dc69fee3750223f3b25346203c015ff02711418b","user":{"login":"src-code","id":60631,"avatar_url":"https://avatars.githubusercontent.com/u/60631?v=3","gravatar_id":"","url":"https://api.github.com/users/src-code","html_url":"https://github.com/src-code","followers_url":"https://api.github.com/users/src-code/followers","following_url":"https://api.github.com/users/src-code/following{/other_user}","gists_url":"https://api.github.com/users/src-code/gists{/gist_id}","starred_url":"https://api.github.com/users/src-code/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/src-code/subscriptions","organizations_url":"https://api.github.com/users/src-code/orgs","repos_url":"https://api.github.com/users/src-code/repos","events_url":"https://api.github.com/users/src-code/events{/privacy}","received_events_url":"https://api.github.com/users/src-code/received_events","type":"User","site_admin":false},"body":"I'm going to open a new issue to track this performance issue","created_at":"2015-07-30T17:52:15Z","updated_at":"2015-07-30T17:52:15Z","html_url":"https://github.com/yahoo/atomizer/pull/233#discussion_r35899045","pull_request_url":"https://api.github.com/repos/yahoo/atomizer/pulls/233","_links":{"self":{"href":"https://api.github.com/repos/yahoo/atomizer/pulls/comments/35899045"},"html":{"href":"https://github.com/yahoo/atomizer/pull/233#discussion_r35899045"},"pull_request":{"href":"https://api.github.com/repos/yahoo/atomizer/pulls/233"}}},"pull_request":{"url":"https://api.github.com/repos/yahoo/atomizer/pulls/233","id":41186460,"html_url":"https://github.com/yahoo/atomizer/pull/233","diff_url":"https://github.com/yahoo/atomizer/pull/233.diff","patch_url":"https://github.com/yahoo/atomizer/pull/233.patch","issue_url":"https://api.github.com/repos/yahoo/atomizer/issues/233","number":233,"state":"open","locked":false,"title":"Don't combine selectors if the selector contains an escaped colon","user":{"login":"src-code","id":60631,"avatar_url":"https://avatars.githubusercontent.com/u/60631?v=3","gravatar_id":"","url":"https://api.github.com/users/src-code","html_url":"https://github.com/src-code","followers_url":"https://api.github.com/users/src-code/followers","following_url":"https://api.github.com/users/src-code/following{/other_user}","gists_url":"https://api.github.com/users/src-code/gists{/gist_id}","starred_url":"https://api.github.com/users/src-code/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/src-code/subscriptions","organizations_url":"https://api.github.com/users/src-code/orgs","repos_url":"https://api.github.com/users/src-code/repos","events_url":"https://api.github.com/users/src-code/events{/privacy}","received_events_url":"https://api.github.com/users/src-code/received_events","type":"User","site_admin":false},"body":"Escaped colons in a classname break the entire declaration in IE < 8, so we can't combine selectors that contain them with other selectors if we want the other selectors to work properly in old IE.  \r\n\r\n**Example:**\r\n\r\n*Input:*\r\n\r\n```text\r\nD(ib)\r\nMore:h_D(ib)\r\nIbBox\r\nLineClamp(2,3em)\r\n```\r\n\r\n*Output before fix:*\r\n\r\n```css\r\n.D\\(ib\\), .More:hover .More\\:h_D\\(ib\\), .IbBox, a[class*=LineClamp], a[class*=LineClamp]:after {\r\n  display: inline-block;\r\n}\r\n.D\\(ib\\), .More:hover .More\\:h_D\\(ib\\), .IbBox, a[class*=LineClamp] {\r\n  zoom: 1;\r\n  *display: inline;\r\n}\r\n.IbBox {\r\n  vertical-align: top;\r\n}\r\n[class*=LineClamp] {\r\n  display: -webkit-box;\r\n  -webkit-box-orient: vertical;\r\n}\r\n[class*=LineClamp], a[class*=LineClamp]:after {\r\n  overflow: hidden;\r\n}\r\na[class*=LineClamp] {\r\n  display : -webkit-box;\r\n}\r\na[class*=LineClamp]:after {\r\n  content: \".\";\r\n  font-size: 0;\r\n  visibility: hidden;\r\n  height: 0;\r\n  width: 0;\r\n}\r\n.LineClamp\\(2\\) {\r\n  -webkit-line-clamp: 2;\r\n  max-height: ;\r\n}\r\n```\r\n\r\n*Output after fix*\r\n\r\n```css\r\n.D\\(ib\\), .IbBox, a[class*=LineClamp] {\r\n  display: inline-block;\r\n  zoom: 1;\r\n  *display: inline;\r\n}\r\n.More:hover .More\\:h_D\\(ib\\) {\r\n  display: inline-block;\r\n  zoom: 1;\r\n  *display: inline;\r\n}\r\n.IbBox {\r\n  vertical-align: top;\r\n}\r\n[class*=LineClamp] {\r\n  display: -webkit-box;\r\n  -webkit-box-orient: vertical;\r\n  overflow: hidden;\r\n}\r\na[class*=LineClamp] {\r\n  display : -webkit-box;\r\n}\r\na[class*=LineClamp]:after {\r\n  content: \".\";\r\n  font-size: 0;\r\n  visibility: hidden;\r\n  display: inline-block;\r\n  overflow: hidden;\r\n  height: 0;\r\n  width: 0;\r\n}\r\n.LineClamp\\(2\\,3em\\) {\r\n  -webkit-line-clamp: 2;\r\n  max-height: 3em;\r\n}\r\n```","created_at":"2015-07-30T00:10:28Z","updated_at":"2015-07-30T17:52:15Z","closed_at":null,"merged_at":null,"merge_commit_sha":"6175751773dbdd5866c889fbb19494d749d03961","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/yahoo/atomizer/pulls/233/commits","review_comments_url":"https://api.github.com/repos/yahoo/atomizer/pulls/233/comments","review_comment_url":"https://api.github.com/repos/yahoo/atomizer/pulls/comments{/number}","comments_url":"https://api.github.com/repos/yahoo/atomizer/issues/233/comments","statuses_url":"https://api.github.com/repos/yahoo/atomizer/statuses/832153ced0511d82d293da9b090790fb641fc8a1","head":{"label":"yahoo:no-combine","ref":"no-combine","sha":"832153ced0511d82d293da9b090790fb641fc8a1","user":{"login":"yahoo","id":16574,"avatar_url":"https://avatars.githubusercontent.com/u/16574?v=3","gravatar_id":"","url":"https://api.github.com/users/yahoo","html_url":"https://github.com/yahoo","followers_url":"https://api.github.com/users/yahoo/followers","following_url":"https://api.github.com/users/yahoo/following{/other_user}","gists_url":"https://api.github.com/users/yahoo/gists{/gist_id}","starred_url":"https://api.github.com/users/yahoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yahoo/subscriptions","organizations_url":"https://api.github.com/users/yahoo/orgs","repos_url":"https://api.github.com/users/yahoo/repos","events_url":"https://api.github.com/users/yahoo/events{/privacy}","received_events_url":"https://api.github.com/users/yahoo/received_events","type":"Organization","site_admin":false},"repo":{"id":24696357,"name":"atomizer","full_name":"yahoo/atomizer","owner":{"login":"yahoo","id":16574,"avatar_url":"https://avatars.githubusercontent.com/u/16574?v=3","gravatar_id":"","url":"https://api.github.com/users/yahoo","html_url":"https://github.com/yahoo","followers_url":"https://api.github.com/users/yahoo/followers","following_url":"https://api.github.com/users/yahoo/following{/other_user}","gists_url":"https://api.github.com/users/yahoo/gists{/gist_id}","starred_url":"https://api.github.com/users/yahoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yahoo/subscriptions","organizations_url":"https://api.github.com/users/yahoo/orgs","repos_url":"https://api.github.com/users/yahoo/repos","events_url":"https://api.github.com/users/yahoo/events{/privacy}","received_events_url":"https://api.github.com/users/yahoo/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/yahoo/atomizer","description":"A tool for creating Atomic CSS, a collection of single purpose styling units for maximum reuse","fork":false,"url":"https://api.github.com/repos/yahoo/atomizer","forks_url":"https://api.github.com/repos/yahoo/atomizer/forks","keys_url":"https://api.github.com/repos/yahoo/atomizer/keys{/key_id}","collaborators_url":"https://api.github.com/repos/yahoo/atomizer/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/yahoo/atomizer/teams","hooks_url":"https://api.github.com/repos/yahoo/atomizer/hooks","issue_events_url":"https://api.github.com/repos/yahoo/atomizer/issues/events{/number}","events_url":"https://api.github.com/repos/yahoo/atomizer/events","assignees_url":"https://api.github.com/repos/yahoo/atomizer/assignees{/user}","branches_url":"https://api.github.com/repos/yahoo/atomizer/branches{/branch}","tags_url":"https://api.github.com/repos/yahoo/atomizer/tags","blobs_url":"https://api.github.com/repos/yahoo/atomizer/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/yahoo/atomizer/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/yahoo/atomizer/git/refs{/sha}","trees_url":"https://api.github.com/repos/yahoo/atomizer/git/trees{/sha}","statuses_url":"https://api.github.com/repos/yahoo/atomizer/statuses/{sha}","languages_url":"https://api.github.com/repos/yahoo/atomizer/languages","stargazers_url":"https://api.github.com/repos/yahoo/atomizer/stargazers","contributors_url":"https://api.github.com/repos/yahoo/atomizer/contributors","subscribers_url":"https://api.github.com/repos/yahoo/atomizer/subscribers","subscription_url":"https://api.github.com/repos/yahoo/atomizer/subscription","commits_url":"https://api.github.com/repos/yahoo/atomizer/commits{/sha}","git_commits_url":"https://api.github.com/repos/yahoo/atomizer/git/commits{/sha}","comments_url":"https://api.github.com/repos/yahoo/atomizer/comments{/number}","issue_comment_url":"https://api.github.com/repos/yahoo/atomizer/issues/comments{/number}","contents_url":"https://api.github.com/repos/yahoo/atomizer/contents/{+path}","compare_url":"https://api.github.com/repos/yahoo/atomizer/compare/{base}...{head}","merges_url":"https://api.github.com/repos/yahoo/atomizer/merges","archive_url":"https://api.github.com/repos/yahoo/atomizer/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/yahoo/atomizer/downloads","issues_url":"https://api.github.com/repos/yahoo/atomizer/issues{/number}","pulls_url":"https://api.github.com/repos/yahoo/atomizer/pulls{/number}","milestones_url":"https://api.github.com/repos/yahoo/atomizer/milestones{/number}","notifications_url":"https://api.github.com/repos/yahoo/atomizer/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/yahoo/atomizer/labels{/name}","releases_url":"https://api.github.com/repos/yahoo/atomizer/releases{/id}","created_at":"2014-10-01T21:35:27Z","updated_at":"2015-07-28T21:01:17Z","pushed_at":"2015-07-30T17:41:10Z","git_url":"git://github.com/yahoo/atomizer.git","ssh_url":"git@github.com:yahoo/atomizer.git","clone_url":"https://github.com/yahoo/atomizer.git","svn_url":"https://github.com/yahoo/atomizer","homepage":"http://acss.io","size":2136,"stargazers_count":142,"watchers_count":142,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":14,"mirror_url":null,"open_issues_count":15,"forks":14,"open_issues":15,"watchers":142,"default_branch":"master"}},"base":{"label":"yahoo:master","ref":"master","sha":"bddf21b20ac4f924465f60a711f0f699d2a8c871","user":{"login":"yahoo","id":16574,"avatar_url":"https://avatars.githubusercontent.com/u/16574?v=3","gravatar_id":"","url":"https://api.github.com/users/yahoo","html_url":"https://github.com/yahoo","followers_url":"https://api.github.com/users/yahoo/followers","following_url":"https://api.github.com/users/yahoo/following{/other_user}","gists_url":"https://api.github.com/users/yahoo/gists{/gist_id}","starred_url":"https://api.github.com/users/yahoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yahoo/subscriptions","organizations_url":"https://api.github.com/users/yahoo/orgs","repos_url":"https://api.github.com/users/yahoo/repos","events_url":"https://api.github.com/users/yahoo/events{/privacy}","received_events_url":"https://api.github.com/users/yahoo/received_events","type":"Organization","site_admin":false},"repo":{"id":24696357,"name":"atomizer","full_name":"yahoo/atomizer","owner":{"login":"yahoo","id":16574,"avatar_url":"https://avatars.githubusercontent.com/u/16574?v=3","gravatar_id":"","url":"https://api.github.com/users/yahoo","html_url":"https://github.com/yahoo","followers_url":"https://api.github.com/users/yahoo/followers","following_url":"https://api.github.com/users/yahoo/following{/other_user}","gists_url":"https://api.github.com/users/yahoo/gists{/gist_id}","starred_url":"https://api.github.com/users/yahoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yahoo/subscriptions","organizations_url":"https://api.github.com/users/yahoo/orgs","repos_url":"https://api.github.com/users/yahoo/repos","events_url":"https://api.github.com/users/yahoo/events{/privacy}","received_events_url":"https://api.github.com/users/yahoo/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/yahoo/atomizer","description":"A tool for creating Atomic CSS, a collection of single purpose styling units for maximum reuse","fork":false,"url":"https://api.github.com/repos/yahoo/atomizer","forks_url":"https://api.github.com/repos/yahoo/atomizer/forks","keys_url":"https://api.github.com/repos/yahoo/atomizer/keys{/key_id}","collaborators_url":"https://api.github.com/repos/yahoo/atomizer/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/yahoo/atomizer/teams","hooks_url":"https://api.github.com/repos/yahoo/atomizer/hooks","issue_events_url":"https://api.github.com/repos/yahoo/atomizer/issues/events{/number}","events_url":"https://api.github.com/repos/yahoo/atomizer/events","assignees_url":"https://api.github.com/repos/yahoo/atomizer/assignees{/user}","branches_url":"https://api.github.com/repos/yahoo/atomizer/branches{/branch}","tags_url":"https://api.github.com/repos/yahoo/atomizer/tags","blobs_url":"https://api.github.com/repos/yahoo/atomizer/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/yahoo/atomizer/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/yahoo/atomizer/git/refs{/sha}","trees_url":"https://api.github.com/repos/yahoo/atomizer/git/trees{/sha}","statuses_url":"https://api.github.com/repos/yahoo/atomizer/statuses/{sha}","languages_url":"https://api.github.com/repos/yahoo/atomizer/languages","stargazers_url":"https://api.github.com/repos/yahoo/atomizer/stargazers","contributors_url":"https://api.github.com/repos/yahoo/atomizer/contributors","subscribers_url":"https://api.github.com/repos/yahoo/atomizer/subscribers","subscription_url":"https://api.github.com/repos/yahoo/atomizer/subscription","commits_url":"https://api.github.com/repos/yahoo/atomizer/commits{/sha}","git_commits_url":"https://api.github.com/repos/yahoo/atomizer/git/commits{/sha}","comments_url":"https://api.github.com/repos/yahoo/atomizer/comments{/number}","issue_comment_url":"https://api.github.com/repos/yahoo/atomizer/issues/comments{/number}","contents_url":"https://api.github.com/repos/yahoo/atomizer/contents/{+path}","compare_url":"https://api.github.com/repos/yahoo/atomizer/compare/{base}...{head}","merges_url":"https://api.github.com/repos/yahoo/atomizer/merges","archive_url":"https://api.github.com/repos/yahoo/atomizer/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/yahoo/atomizer/downloads","issues_url":"https://api.github.com/repos/yahoo/atomizer/issues{/number}","pulls_url":"https://api.github.com/repos/yahoo/atomizer/pulls{/number}","milestones_url":"https://api.github.com/repos/yahoo/atomizer/milestones{/number}","notifications_url":"https://api.github.com/repos/yahoo/atomizer/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/yahoo/atomizer/labels{/name}","releases_url":"https://api.github.com/repos/yahoo/atomizer/releases{/id}","created_at":"2014-10-01T21:35:27Z","updated_at":"2015-07-28T21:01:17Z","pushed_at":"2015-07-30T17:41:10Z","git_url":"git://github.com/yahoo/atomizer.git","ssh_url":"git@github.com:yahoo/atomizer.git","clone_url":"https://github.com/yahoo/atomizer.git","svn_url":"https://github.com/yahoo/atomizer","homepage":"http://acss.io","size":2136,"stargazers_count":142,"watchers_count":142,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":14,"mirror_url":null,"open_issues_count":15,"forks":14,"open_issues":15,"watchers":142,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/yahoo/atomizer/pulls/233"},"html":{"href":"https://github.com/yahoo/atomizer/pull/233"},"issue":{"href":"https://api.github.com/repos/yahoo/atomizer/issues/233"},"comments":{"href":"https://api.github.com/repos/yahoo/atomizer/issues/233/comments"},"review_comments":{"href":"https://api.github.com/repos/yahoo/atomizer/pulls/233/comments"},"review_comment":{"href":"https://api.github.com/repos/yahoo/atomizer/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/yahoo/atomizer/pulls/233/commits"},"statuses":{"href":"https://api.github.com/repos/yahoo/atomizer/statuses/832153ced0511d82d293da9b090790fb641fc8a1"}}}}