{"push_id":1419678456,"size":40,"distinct_size":40,"ref":"refs/heads/react-native-upgrader","head":"eecaad1bd1808972bfe1a7f1872cde2d33f2544f","before":"3c4d6fe581947d7501cd49297c983bc0719029fc","commits":[{"sha":"c455c2bcc625a6870a9b2a2a9950c249ce149408","author":{"name":"Nicolas Charpentier","email":"412818dd2a57c7d78526d04ffb106fb1cffb2870@gmail.com"},"message":"Add icebox command\n\nSummary:\nAdd icebox command to comment, label and close an issue from one command instead of ping facebook bot serveral times. The goal is to reduce ping pollution, see the [current implementation](https://github.com/facebook/react-native/issues/6752#issuecomment-260830484).\n\nWill be used by the Iceboxer script for people who only have access to the facebook-github-bot.\n\ncc mkonicek\nCloses https://github.com/facebook/react-native/pull/10963\n\nDifferential Revision: D4222330\n\nPulled By: mkonicek\n\nfbshipit-source-id: 69ecf282a7004dfc23884e906bec582c58a749a8","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/c455c2bcc625a6870a9b2a2a9950c249ce149408"},{"sha":"3aa25f79172159e3079568d0131623054916fb59","author":{"name":"Martin Konicek","email":"f9c5ef9b5325ce81d68a8d733940290a1a837e54@fb.com"},"message":"Allow git to merge pbxproj files\n\nSummary:\nFollow on in https://github.com/facebook/react-native/pull/10864.\n\n**Motivation**\n\nncuillery Is has a lot of experience with upgrading RN projects (see his [talk](http://www.slideshare.net/ncuillery/introducing-the-new-reactnative-upgrade)) and is rewriting 'react-native upgrade' to use git.\n\nHe tells me that we actually want git to merge changes in the .pbxproj file. In his words: \"Making the project.pbxproj invisible for \"git diff\" means that react-native-git-upgrade will never be able to upgrade the project.pbxproj.\"\n\nNote the git docs explicitly recommend not to use git to merge .pbxproj files: https://git-scm.com/book/en/v2/Customizing-Git-Git-Attributes#Binary-Files\n\nncuillery do we have an alternative? Some ideas:\n\n1. Use a 3rd-party tool in 'react-native upgrade' to merge the .pbxproj file?\n2. We could always re-generate and overwrite the .pbxproj file (never merge) and then run 'react-native link' to update native 3rd-party dependencies in the Xcode project?\n3. Last resort: stay away\nCloses https://github.com/facebook/react-native/pull/11047\n\nDifferential Revision: D4220521\n\nfbshipit-source-id: 823c735856b519be114aa4349ca1392910f00445","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/3aa25f79172159e3079568d0131623054916fb59"},{"sha":"cab88104a3629d34ce4d17adea6acac45d2974cd","author":{"name":"Alex Kotliarskyi","email":"1040746ae9366ab18b414ffcc13be951ec9c2928@fb.com"},"message":"Cleanup before image! codemod\n\nReviewed By: fkgozali\n\nDifferential Revision: D4196297\n\nfbshipit-source-id: 5c32646dfe858f34c185a917e7d081a60777f242","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/cab88104a3629d34ce4d17adea6acac45d2974cd"},{"sha":"22141468aba2dc90946c753420a8091b67e7073c","author":{"name":"Alex Kotliarskyi","email":"1040746ae9366ab18b414ffcc13be951ec9c2928@fb.com"},"message":"Kill require('image!...')\n\nReviewed By: yungsters\n\nDifferential Revision: D4179964\n\nfbshipit-source-id: e56ee7814e23a3afc6223527f1afefe51a9e0aec","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/22141468aba2dc90946c753420a8091b67e7073c"},{"sha":"90284eb67d9ca27dc2d5651313c1fddf69fa9cf1","author":{"name":"Mike Grabowski","email":"97babb7adaf42d77e40f5469542cc28be6e7f46d@gmail.com"},"message":"Include guide for BreakingChanges page\n\nSummary: We now keep track of breaking changes - include required steps to sync them up with the release so they are relevant.\n\nDifferential Revision: D4225698\n\nfbshipit-source-id: 35780330e95f2e51b3df192a709cd3e7431e52ab","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/90284eb67d9ca27dc2d5651313c1fddf69fa9cf1"},{"sha":"be5868dddb9041f1a30ae8b44262c2fcf2b49ce3","author":{"name":"Jennifer Wang","email":"05bdcc0009befa6157136c1853af92371afd0d3f@fb.com"},"message":"Workaround native module dependency in Jest environment\n\nReviewed By: josephsavona\n\nDifferential Revision: D4225750\n\nfbshipit-source-id: 6ac5a5cc1869232861977ea214970804acd7e39d","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/be5868dddb9041f1a30ae8b44262c2fcf2b49ce3"},{"sha":"ea913e4691cbac16b2f66a02f6439c3cccd2c28d","author":{"name":"Adam Comella","email":"d1c71746ae3861372e1ee3d0a97afe181b0f3e6d@microsoft.com"},"message":"Android: Update coalesce to prefer newest event\n\nSummary:\nThe only callsite of `coalesce` looks like this:\n\n```\nnewEvent.coalesce(oldEvent);\n```\n\nThe default `coalesce` implementation returns the event with the most recent timestamp. When the events have the same timestamp then, using the variable names from above, `coalesce` returns `oldEvent`.\n\nThis change updates `coalesce`'s implementation to make it explicit that it returns `this` (`newEvent` in the variable names from above) in the case of a tie.\n\nThe motivation for this change is related to scroll events. In my team's app, we were seeing scroll events being emitted with the same timestamp and the coalescing logic was causing the oldest scroll event to be chosen. This was causing our JavaScript code to receive stale scroll information and the way the JavaScript code utilized this stale scroll information resulted in the ScrollView settling on the wrong scroll position.\n\n**Test plan (required)**\n\nVerified that scroll events work properly in a ScrollView in a test app. Also, my team's app uses this\nCloses https://github.com/facebook/react-native/pull/11080\n\nDifferential Revision: D4226152\n\nPulled By: andreicoman11\n\nfbshipit-source-id: d28a2569225ca95de662f2239a0fa14de0540a7d","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/ea913e4691cbac16b2f66a02f6439c3cccd2c28d"},{"sha":"55a615bf983a9e354fd6589510a79784ddf33015","author":{"name":"Pieter De Baets","email":"377831b9cd0f79984db1fb62440ca394156e97b4@fb.com"},"message":"Poison all system JSC identifiers on iOS to prevent accidental usage\n\nReviewed By: mhorowitz\n\nDifferential Revision: D4197375\n\nfbshipit-source-id: 216cd5cfc52fa4d242c8822faf08eb98a35fa43f","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/55a615bf983a9e354fd6589510a79784ddf33015"},{"sha":"cb3e575deb8a2be972298b12761ed9ee8f0ae63d","author":{"name":"Pieter De Baets","email":"377831b9cd0f79984db1fb62440ca394156e97b4@fb.com"},"message":"Allow bridge delegate to specify whether to use custom JSC wrapper\n\nReviewed By: mhorowitz\n\nDifferential Revision: D4197657\n\nfbshipit-source-id: 09e050f802b41c9a7016456c25381018b2123553","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/cb3e575deb8a2be972298b12761ed9ee8f0ae63d"},{"sha":"41810008b7a4bbf8421041ed9e0354ac88e95d40","author":{"name":"Pieter De Baets","email":"377831b9cd0f79984db1fb62440ca394156e97b4@fb.com"},"message":"Inject custom JSC wrapper from FBReactModule\n\nReviewed By: bnham\n\nDifferential Revision: D4197674\n\nfbshipit-source-id: b195ff1dc850981be36ecb3080b131d03df85a4a","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/41810008b7a4bbf8421041ed9e0354ac88e95d40"},{"sha":"35e75c8cdf036c68680464c8f916bd855ce86c3e","author":{"name":"Adam Comella","email":"d1c71746ae3861372e1ee3d0a97afe181b0f3e6d@microsoft.com"},"message":"Android: Fix WebView crash for links of unknown schemes\n\nSummary:\nWhen tapping on a link in a WebView with an unknown scheme, the app would crash. For example, if you have the link \"something://example/\" but your device doesn't have anything to handle the \"something\" scheme, the app would crash when the user clicks on the link. This change handles the exception to prevent the app from crashing. Instead, the click is a no-op and the WebView doesn't navigate anywhere.\n\n**Test plan (required)**\n\nVerified the app no longer crashes when clicking on unknown schemes in a test app. Also, my team uses this change in our app.\n\nAdam Comella\nMicrosoft Corp.\nCloses https://github.com/facebook/react-native/pull/10903\n\nDifferential Revision: D4226371\n\nPulled By: mkonicek\n\nfbshipit-source-id: a6d3957806c6063e74fe055b0979cb9d1ce40e51","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/35e75c8cdf036c68680464c8f916bd855ce86c3e"},{"sha":"d196ca70db5d05a40faf292dc19bebd31620b86e","author":{"name":"alex","email":"05770f1c95a2955a2843db7897a4966104672926@gmail.com"},"message":"Caching assets only for production environment\n\nSummary:\n**Motivation**\n\nIn the context of a webview, one may extract assets (javascript or any types really), and relates to them through the html.\n\nThe packager `Server` serves this files correctly but also applies a cache based on time (a year). During development, this cache is actually bad as we need to re-iterate the process of editing/testing quickly.\n\nI don't believe it is necessary to cache, and still wanted to make sure we would if process.env.NODE_ENV is 'production'.\n\n**Test plan**\n\nRun jest on impacted files:\n```\nnode_modules/.bin/jest packager/react-packager/src/Server/__tests__/Server-test.js\n```\nCloses https://github.com/facebook/react-native/pull/10919\n\nDifferential Revision: D4226350\n\nPulled By: davidaurelio\n\nfbshipit-source-id: d4bbff5b1a5b691aab197bcddb8fa9d2e43caa16","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/d196ca70db5d05a40faf292dc19bebd31620b86e"},{"sha":"eaccd7e82e228d744e6aef34b332d99c1ff616a5","author":{"name":"Pandiarajan Nagarajan","email":"1d4c2b60d7dfe754e8ea67e1a12005fb8ad882bf@gmail.com"},"message":"Android datepicker mode configurations added\n\nSummary:\nCurrently, The **DatePickerAndroid** component opens the native date picker with default mode. We can't able to change the mode via configurations. To support android **[date-picker mode](https://developer.android.com/reference/android/widget/DatePicker.html)**, existing component needs to be changed.\n\n**For Android >= 5.0**, The DatePickerDialog doesn't provide the default method to change the mode of a date picker.  So I have added custom theme which will support two kinds of **mode('spinner','calendar')** ref:https://developer.android.com/reference/android/R.attr.html#datePickerStyle.\n\n**For Android < 5.0,** The DatePickerDialog provides the default method to change the mode of a date picker. ref:https://developer.android.com/reference/android/widget/DatePicker.html#setCalendarViewShown(boolean).\n\nWith the help of **Build.VERSION.SDK_INT** I have done the above functionality with limited lines of code changes and also I have added the example to UIExplorer.\n\nCloses https://github.com/facebook/react-native/pull/10932\n\nDifferential Revision: D4176089\n\nPulled By: ericvicenti\n\nfbshipit-source-id: 7dfa9101214501ac2124bda7ee273a538f04e7cf","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/eaccd7e82e228d744e6aef34b332d99c1ff616a5"},{"sha":"68c6d71cea4e37f0360453be6e7f792ed12f6f3a","author":{"name":"Andy Street","email":"6e0a5d741ac959bfc549c8536c97ed54924c3d29@fb.com"},"message":"BREAKING [react_native] Don't create CSSNodes for virtual shadow nodes\n\nSummary:\nVirtual shadow nodes (e.g. text) don't use CSSNodes so we don't need to create them. This shows large savings in CSSNodes allocated, depending on the app.\n\nThis could be breaking if:\n- You have virtual nodes that still set and get CSS properties. The setters now no-op for virtual nodes (I unfortunately couldn't remove them completely -- see the comment on LayoutShadowNode), but the getters will NPE. If you see these NPE's, you should almost definitely be using your own datastructure instead of a CSSNode as virtual nodes will not participate in the layout process (and the CSSNode is then behaving just as a POJO for you).\n\nI do not anticipate this to be breaking for anyone, but am including breaking in the commit message since this is a change in API contract.\n\nReviewed By: emilsjolander\n\nDifferential Revision: D4220204\n\nfbshipit-source-id: b8dc083fff420eb94180f669dd49389136111ecb","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/68c6d71cea4e37f0360453be6e7f792ed12f6f3a"},{"sha":"dad520476ef5e82bf3b71b29311c3a472a0a93eb","author":{"name":"Emil Sjolander","email":"fd01956b6f7ea3f89c72dc9353cbe274f619cc70@fb.com"},"message":"Fixup recent fix to flex basis and put it behind an experimental flag\n\nReviewed By: gkassabli\n\nDifferential Revision: D4222910\n\nfbshipit-source-id: d693482441fcc4d37a288e2e3529057a04f60541","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/dad520476ef5e82bf3b71b29311c3a472a0a93eb"},{"sha":"b49e7afe47856202d5871a5b341768c57f92c2c9","author":{"name":"Janic Duplessis","email":"f86e95ed6b436aea8f9b2714b1e8fe379ef2d649@gmail.com"},"message":"Dispatch native handled events to JS\n\nSummary:\nWhen native events where handled they were not sent to JS as an optimization but this caused some issues. One of the major one is touches are not handled properly inside a ScrollView with an Animated.event because it doesn't receive scroll events so it can't cancel the touch if the user scrolled.\nCloses https://github.com/facebook/react-native/pull/10981\n\nDifferential Revision: D4226403\n\nPulled By: astreet\n\nfbshipit-source-id: 41278d3ed4b684af142d9e273b11b974eb679879","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/b49e7afe47856202d5871a5b341768c57f92c2c9"},{"sha":"8016d838beddc59f698b2004b573115fe82c1408","author":{"name":"Adam Comella","email":"d1c71746ae3861372e1ee3d0a97afe181b0f3e6d@microsoft.com"},"message":"iOS: Fix autoCorrect doesn't revert to initial state\n\nSummary:\nThere's an inconsistency in autoCorrect's default state:\n  - If you don't specify a value for autoCorrect, it defaults to on.\n  - If you specify true/false for autoCorrect and later specify null, autoCorrect turns off. It should have reverted to its initial state of on.\n\nThe reason for this discrepancy is that autoCorrect is exposed to JS as a boolean but it is actually an enum with three states in native:\n  - UITextAutocorrectionTypeDefault (the default value)\n  - UITextAutocorrectionTypeYes\n  - UITextAutocorrectionTypeNo\n\nThis is fixed by explicitly mapping JS null to UITextAutocorrectionTypeDefault.\n\n**Test plan (required)**\n\nVerified that switching `autoCorrect` between `true`, `false`, and `null` all work correctly in single line and multiline `TextInputs`.\n\nAdam Comella\nMicrosoft Corp.\nCloses https://github.com/facebook/react-native/pull/11055\n\nDifferential Revision: D4226419\n\nPulled By: javache\n\nfbshipit-source-id: e3e5769a3aa537f00fb56ca4ae622ff4213481c5","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/8016d838beddc59f698b2004b573115fe82c1408"},{"sha":"f9d80a451a3009a5f62ce1321d456f4060d516c7","author":{"name":"David Aurelio","email":"ff048047600c1f3e891446665b5269773d037402@fb.com"},"message":"Bring back programmatic packager API\n\nSummary:\nBrings back parts of the programmatic API removed in 7762f374d50d3b1df8513c826862c2056e8718f9. This is used by a few people. Also updates the docs accordingly.\n\ncc akaila\n\nReviewed By: jeanlauliac\n\nDifferential Revision: D4226348\n\nfbshipit-source-id: e5c0794f9c5415f14b54d16c6f35f902eafc3064","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/f9d80a451a3009a5f62ce1321d456f4060d516c7"},{"sha":"5db7484e8d4d2874b10abbddb2cb29ae26755af2","author":{"name":"David Aurelio","email":"ff048047600c1f3e891446665b5269773d037402@fb.com"},"message":"Move `ScriptTag` and `RCTJSModulesUnbundle` to `cxxreact`\n\nReviewed By: javache\n\nDifferential Revision: D4213662\n\nfbshipit-source-id: fc2ec9717c24fe77bb022a48777049f88173ebeb","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/5db7484e8d4d2874b10abbddb2cb29ae26755af2"},{"sha":"9fb520e3b223aeb31139b0c83ca4a1b6a1dfa488","author":{"name":"Mike Grabowski","email":"97babb7adaf42d77e40f5469542cc28be6e7f46d@gmail.com"},"message":"Add ability to specify main Activity in run-android\n\nSummary:\nFollow up to #8190\n\nTested with custom parameter as well as w/o (using default value). All worked well.\n\nDifferential Revision: D4220565\n\nPulled By: mkonicek\n\nfbshipit-source-id: e8a98542d3ff96d60ff6045b328f5b464f78ee74","distinct":true,"url":"https://api.github.com/repos/ncuillery/react-native/commits/9fb520e3b223aeb31139b0c83ca4a1b6a1dfa488"}]}
{"actor":{"display_login":"ncuillery"}}