{"push_id":2052587016,"size":55,"distinct_size":55,"ref":"refs/heads/master","head":"660a8b435c43f666f4cca60d6fa5eb8da1c47e09","before":"1dd67d69aa4e2ea5431cfcb6967d759168338ae1","commits":[{"sha":"f983cd86f07a925aa3cdf271178d3deb693e4f29","author":{"name":"Flarnie Marchan","email":"816573d5361b6026c5a0fc81a5bd206ffc2a6733@fb.com"},"message":"Add weekly meeting notes\n\nSummary:\njust keeping things up to date~\nCloses https://github.com/facebook/draft-js/pull/1313\n\nDifferential Revision: D5524500\n\nfbshipit-source-id: f1aec9bac05fc015184ba4ca2ff6b191b4a08a07","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/f983cd86f07a925aa3cdf271178d3deb693e4f29"},{"sha":"7f0cab28386ec4bde8ec6289377bff9e53cd019b","author":{"name":"Jesse Beach","email":"3d35aca031e0b282e51db3047c4bde29794e6095@fb.com"},"message":"Change aria-owns to aria-controls in draft.js\n\nSummary:\n'aria-owns' creates a parent-child relationship between the owner and ownee in the AX Tree. We really don't want the typeahead dialog to be a child of the input.\n\n`aria-controls` sets up a controller-controllee relationship. This is the correct relationship for the input and its typeahead dialog.\n\n**This is a breaking API change.**\n\nReviewed By: flarnie\n\nDifferential Revision: D5476399\n\nfbshipit-source-id: fe69255351dcd173e08de1aa21d8ee0a6728b68d","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/7f0cab28386ec4bde8ec6289377bff9e53cd019b"},{"sha":"744e9b4eb4810797a93c66591fea6f9cac533b4b","author":{"name":"Jesse Beach","email":"3d35aca031e0b282e51db3047c4bde29794e6095@fb.com"},"message":"aria-haspop indicates popup menus. It is not needed here\n\nSummary: `aria-haspopup` is used to indicate \"popup button\"; buttons that, when pressed, show a little menu of options. It's not meant to indicate any element that has a dialog associated with it. In the case of draft.js, the `aria-expanded` attribute is used to indicate that the input has a dropdown with options.\n\nReviewed By: spicyj\n\nDifferential Revision: D5550366\n\nfbshipit-source-id: 90249146a7f69f538ab2177842ee925825238ccb","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/744e9b4eb4810797a93c66591fea6f9cac533b4b"},{"sha":"036e3a848e3593c97f4c3011e1ddc045e128a7af","author":{"name":"Ben Alpert","email":"fd584e7b50f4de9ab07be067334cab0917b60e54@fb.com"},"message":"More caution when removing all ranges in blur handler\n\nSummary:\nNow we only do it if the current selection is still in the wrong element..\n\nShould mitigate https://github.com/facebook/draft-js/pull/1190.\n\nReviewed By: flarnie\n\nDifferential Revision: D5570526\n\nfbshipit-source-id: 0b5b88542993773d71db0fffeb09c1b5c65c627e","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/036e3a848e3593c97f4c3011e1ddc045e128a7af"},{"sha":"9a55eef67c7c819ecea377a4c95ca8b1bf0e5b56","author":{"name":"Flarnie Marchan","email":"816573d5361b6026c5a0fc81a5bd206ffc2a6733@fb.com"},"message":"Remove webkit check on 'clearRanges' hack\n\nSummary:\nThe issue where a range is not cleared was showing up across all browsers, so\nwe removed the 'webkit' check and clarified the comment.\n\nRelated to https://github.com/facebook/draft-js/pull/1190\n\nReviewed By: spicyj\n\nDifferential Revision: D5580833\n\nfbshipit-source-id: 3949d036654597c77adb6247310f3c6b8d364702","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/9a55eef67c7c819ecea377a4c95ca8b1bf0e5b56"},{"sha":"e1d36af11eadc5cf4ebb900a98b81fb2aaabc246","author":{"name":"Dave Alongi","email":"9451591b95e32bed693f8aa77a3d3e5a7e3dcd6c@fb.com"},"message":"jest.resetModuleRegistry -> jest.resetModules\n\nSummary:\njest.resetModules() and jest.resetModuleRegistry are identical: https://github.com/facebook/jest/blob/a5a8a1304b0e71f40eabf5036dfe9455078dbe7c/packages/jest-runtime/src/index.js#L755\n\nHowever, only jest.resetModules is documented and defined in flow-typed definition file for jest. Codemod the others away so we don't have to remember to add this manually to our jest typedef file everytime we sync it\n\nThis is mostly:\n\n```\ncodemod -d html/js/ \"jest.resetModuleRegistry\" \"jest.resetModules\"\ncodemod -d html/intern/js \"jest.resetModuleRegistry\" \"jest.resetModules\"\ncodemod -d scripts/ \"jest.resetModuleRegistry\" \"jest.resetModules\"\n```\n\nThen used tbgs to find any remaining and fix them by hand. (E.g. places doing jest.<something else>.resetModuleRegistry)\n\nAlso updated the jest typedef file to no longer include this function\n\nbypass-lint\n^ Annoying emails header lint rule.\n\nReviewed By: aaronabramov\n\nDifferential Revision: D5604961\n\nfbshipit-source-id: 37bc1299dad9be19e672ad7df4a74ecabb75dc52","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/e1d36af11eadc5cf4ebb900a98b81fb2aaabc246"},{"sha":"96688e10b22a778c76e03009da4b9f3d05eba5f7","author":{"name":"Ben Alpert","email":"fd584e7b50f4de9ab07be067334cab0917b60e54@fb.com"},"message":"Cautious range removal on blur without feature flag\n\nSummary: Fixes https://github.com/facebook/draft-js/issues/1188. Closes https://github.com/facebook/draft-js/pull/1190.\n\nReviewed By: flarnie\n\nDifferential Revision: D5614905\n\nfbshipit-source-id: 5d18d96e279b360cfa47b9156fc85e93424d33b5","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/96688e10b22a778c76e03009da4b9f3d05eba5f7"},{"sha":"00f2cbd1ac51e98c29917bd70a1038f8d7ee4bdc","author":{"name":"Flarnie Marchan","email":"816573d5361b6026c5a0fc81a5bd206ffc2a6733@users.noreply.github.com"},"message":"Add weekly meeting notes from Aug. 4, Aug. 11th\n\nSummary:\njust updating meeting docs, doesn't really need review.\nCloses https://github.com/facebook/draft-js/pull/1335\n\nDifferential Revision: D5619881\n\nfbshipit-source-id: 7508687bcc69a8a5e9c4c6aea5d87ce276083f70","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/00f2cbd1ac51e98c29917bd70a1038f8d7ee4bdc"},{"sha":"8ab82e7cef396128864bda3d78924ae162692c96","author":{"name":"Caleb Meredith","email":"844d0a54e0de51b5364fe5d3b04fafc12d5d134f@fb.com"},"message":"Flow v0.53 Codemod #1\n\nSummary:\nbypass-lint\nignore-conflict-markers\nignore-signed-source\nignore-nocommit\n\nReviewed By: avikchaudhuri\n\nfbshipit-source-id: 7aec3d925c8b0c4d9b45c372d99ab67179ad2ece","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/8ab82e7cef396128864bda3d78924ae162692c96"},{"sha":"a8560841a6acf047d130cb649732bcc81ee73d2b","author":{"name":"Caleb Meredith","email":"844d0a54e0de51b5364fe5d3b04fafc12d5d134f@fb.com"},"message":"Flow v0.53 Codemod #2\n\nSummary:\nbypass-lint\nignore-conflict-markers\nignore-signed-source\nignore-nocommit\n\nReviewed By: avikchaudhuri\n\nfbshipit-source-id: e1204d44d8feec0c26d16a33bdfbdcb20497f6e9","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/a8560841a6acf047d130cb649732bcc81ee73d2b"},{"sha":"6d584d4a7bb047a7719e2fe7077976935e26065e","author":{"name":"Caleb Meredith","email":"844d0a54e0de51b5364fe5d3b04fafc12d5d134f@fb.com"},"message":"Flow v0.53.0 Codemod #3\n\nSummary:\nbypass-lint\nignore-conflict-markers\nignore-signed-source\nignore-nocommit\n\nReviewed By: avikchaudhuri\n\nfbshipit-source-id: a37b2d6dbd09b90a1407f732001abb7aef21de79","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/6d584d4a7bb047a7719e2fe7077976935e26065e"},{"sha":"5e74b822f92a6c0851564f616a7a1f9585c09dd4","author":{"name":"Caleb Meredith","email":"844d0a54e0de51b5364fe5d3b04fafc12d5d134f@fb.com"},"message":"Flow v0.53.0 Codemod #4\n\nSummary:\nbypass-lint\nignore-conflict-markers\nignore-signed-source\nignore-nocommit\n\nReviewed By: avikchaudhuri\n\nfbshipit-source-id: c2bd6183ed95176f1331b2d834c607cb276f1255","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/5e74b822f92a6c0851564f616a7a1f9585c09dd4"},{"sha":"1c99ad7cab7f9a69239ddffc03f64a90921dbc23","author":{"name":"Caleb Meredith","email":"844d0a54e0de51b5364fe5d3b04fafc12d5d134f@fb.com"},"message":"Flow v0.53 Codemod #5\n\nSummary:\nbypass-lint\nignore-conflict-markers\nignore-signed-source\nignore-nocommit\n\nReviewed By: avikchaudhuri\n\nfbshipit-source-id: d9b032d51619f9827e819d08198ce6a2aeae0fc5","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/1c99ad7cab7f9a69239ddffc03f64a90921dbc23"},{"sha":"9d40ffb60dbdac56d5cbadf2e2c1d198dc764dfd","author":{"name":"Caleb Meredith","email":"844d0a54e0de51b5364fe5d3b04fafc12d5d134f@fb.com"},"message":"Flow v0.53.0 Codemod #6\n\nSummary:\nbypass-lint\nignore-conflict-markers\nignore-signed-source\nignore-nocommit\n\nReviewed By: avikchaudhuri\n\nfbshipit-source-id: b7e824f7fd36a51d790d21a62717a666b1e2dd2a","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/9d40ffb60dbdac56d5cbadf2e2c1d198dc764dfd"},{"sha":"4a89df4eca5749823bd2942906a5f988a8d51c32","author":{"name":"Caleb Meredith","email":"844d0a54e0de51b5364fe5d3b04fafc12d5d134f@fb.com"},"message":"Flow v0.53.0 Codemod #7\n\nSummary:\nbypass-lint\nignore-conflict-markers\nignore-signed-source\nignore-nocommit\n\nReviewed By: avikchaudhuri\n\nfbshipit-source-id: e22a0038b5bf3a64bb3382fdef757c241cc4c39a","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/4a89df4eca5749823bd2942906a5f988a8d51c32"},{"sha":"e1d3f7657f053fedf3d29346d3a4de81399b068b","author":{"name":"Caleb Meredith","email":"844d0a54e0de51b5364fe5d3b04fafc12d5d134f@fb.com"},"message":"Flow v0.53.0 Codemod #8\n\nSummary:\nbypass-lint\nignore-conflict-markers\nignore-signed-source\nignore-nocommit\n\nReviewed By: avikchaudhuri\n\nfbshipit-source-id: ce6ef0603e85b0bf373e64b77b9c95e55ceaf88c","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/e1d3f7657f053fedf3d29346d3a4de81399b068b"},{"sha":"897f7272219977ddee80fb068428fdb153540e9f","author":{"name":"Caleb Meredith","email":"844d0a54e0de51b5364fe5d3b04fafc12d5d134f@fb.com"},"message":"Flow v0.53.0 Codemod #9\n\nSummary:\nbypass-lint\nignore-conflict-markers\nignore-signed-source\nignore-nocommit\n\nReviewed By: avikchaudhuri\n\nfbshipit-source-id: 66be84ebf50021cffa01f525f8cfb55ea3caf175","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/897f7272219977ddee80fb068428fdb153540e9f"},{"sha":"131a4a7a99b3fa9d62ad7e1dba1fe94648d44563","author":{"name":"Caleb Meredith","email":"844d0a54e0de51b5364fe5d3b04fafc12d5d134f@fb.com"},"message":"Flow v0.53.0 Codemod #10\n\nSummary:\nbypass-lint\nignore-conflict-markers\nignore-signed-source\nignore-nocommit\n\nReviewed By: avikchaudhuri\n\nfbshipit-source-id: a53fe60193b4059d73249199877cf5b8afc61aa4","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/131a4a7a99b3fa9d62ad7e1dba1fe94648d44563"},{"sha":"0a895226c417dac43c41950be6129e667cab2755","author":{"name":"Caleb Meredith","email":"844d0a54e0de51b5364fe5d3b04fafc12d5d134f@fb.com"},"message":"Re-enable Flow at v0.53.0 and add suppression comments\n\nSummary:\nbypass-lint\nignore-conflict-markers\nignore-signed-source\nignore-nocommit\n\nReviewed By: avikchaudhuri\n\nDifferential Revision: D5648778\n\nfbshipit-source-id: 761a88c93407823e30c8cb163cd308027ae0ede8","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/0a895226c417dac43c41950be6129e667cab2755"},{"sha":"0b22d713d556ccc4820850099ad6231493b3f7aa","author":{"name":"António Afonso","email":"f9b1bbf75ba44675436829ca91b858af68df90b2@fb.com"},"message":"Stop setting the url src as the textContent of the img\n\nSummary:\nWARNING: This diff introduces a **BREAKING change** from current Draft: when you paste an image it will no longer render the url of the image (it renders nothing).\n\n= Main Issue =\nThis diff addresses the issue raised on https://github.com/facebook/draft-js/issues/1101\n\ntl;dr of this issue is that by setting the url src as the textContent it creates a significant delay in parsing data: urls since they can easily be ~60KB. This happens because the content of the img will be parsed by draft and for each character there will be an entity reference and entity style entry.\n\n= Solutions =\nIn the comments of the issue 2 solutions were proposed:\n1) Ignore data: urls from being parsed from HTML.\n2) Stop setting the textContent of the img node when parsing HTML.\n\nIn this diff I'm going with solution **2)** becase as flarnie points out in her comment, support to parse img tags was added with the decorator usecase in mind (and ignoring data: urls would make a decorator not render in this case), also, as an example, quip doesn't render anything when an image is pasted so we think this behaviour is reasonable.\n\nThe main downside of this approach is the introduction of a breaking change in the framework, but I think it's acceptable and I'm not expecting any big issue because of this (please correct me if I'm wrong).\n\n= Implementation =\nIdeally I wouldn't set anything on textContent but I'm forced too because otherwise Draft won't create an entity for it. Entity creation is only done if the current node being parsed has children, otherwise skipped: diffusion/E/browse/tfb/trunk/www/html/shared/draft-js/model/encoding/convertFromHTMLToContentBlocks.js;3261725$483.\nMy current solution is to set it to a single space, looks a bit clowny though.\n\nIs the children restriction something we might want to change? The only use case I can see though is when we want to create entities just for decorators to act upon (which is this case).\n\n= A Tale of Two URI implementations =\nWhile fixing and testing I noticed that on our internal version of Draft it crashes when you try to paste a data url.\nI looked into it and found that internally we have a version of URI that has plenty of checks: diffusion/E/browse/tfb/trunk/www/html/shared/core/URIBase.js;3262904$242 and it fails because `data:` is not an allowed protocol: diffusion/E/browse/tfb/trunk/www/html/shared/core/URISchemes.js;3263158$11. While on our public version we have a shim based implementation: https://github.com/facebook/fbjs/blob/master/packages/fbjs/src/__forks__/URI.js.\n\nI'm not expecting pasting data urls to be a common behaviour so not a big deal but we do use URI to check other src attributes in HTML. I recommend to add 'data' to the list of supported protocols. Any reason not to?\n\nIs there any chance we could open source our version of URI? It's tricky testing Draft if we have two different implementations for this.\n\n= Breaking Change =\nAny advice on how to deal with this?\nThe CRMComposer tests explicitly tested the URL rendering, adding tylercraft to the diff to make sure this is fine.\n\nReviewed By: flarnie\n\nDifferential Revision: D5733880\n\nfbshipit-source-id: 2825a083d261b55e469fd73d23257778a13d609e","distinct":true,"url":"https://api.github.com/repos/loominc/draft-js/commits/0b22d713d556ccc4820850099ad6231493b3f7aa"}]}
{"actor":{"display_login":"tberman"}}