{"push_id":1246079711,"size":7,"distinct_size":5,"ref":"refs/heads/feature/7415-freeze-type-defaultprops","head":"58cd9bc560be8d088dc12ba8995c2170a83b08a0","before":"a4ff9b04374242f7f7824714cc486326237e9cf2","commits":[{"sha":"0833d897835b1fd20ebca043b9448981e87521f7","author":{"name":"Robert Chang","email":"038c8e5810f4ec0506423b51b6eabe2f43e366c4@gmail.com"},"message":"change a word in performance docs (#7442)","distinct":false,"url":"https://api.github.com/repos/justingreenberg/react/commits/0833d897835b1fd20ebca043b9448981e87521f7"},{"sha":"43674d989d792fc72534b3cc275723a552c12ab8","author":{"name":"Robert Martin","email":"f5fce58c6b512dc8c555707ccd62888e4652a6c0@rmart.in"},"message":"Capitalize AJAX (#7435)","distinct":false,"url":"https://api.github.com/repos/justingreenberg/react/commits/43674d989d792fc72534b3cc275723a552c12ab8"},{"sha":"7d57c1f0c17eff5aa868791a7496cecd2f7ca392","author":{"name":"B.Orlov","email":"6c6dc228c1518ad3009b6f6f50cf53d87fbd4371@gmail.com"},"message":"Fix batchedUpdates return value (#7444)","distinct":true,"url":"https://api.github.com/repos/justingreenberg/react/commits/7d57c1f0c17eff5aa868791a7496cecd2f7ca392"},{"sha":"8ef00dbb7de944da0e7b14438baffd37df01bf37","author":{"name":"Sebastian Markbåge","email":"b41fc187c6555e69a919eebe4470829dcc170cca@calyptus.eu"},"message":"Bundle DOM renderers into their individual UMD bundles (#7164)\n\n* Cut out isomorphic dependencies from the renderers\r\n\r\nThese files reaches into isomorphic files.\r\n\r\nThe ReactElement functions are exposed on the React object anyway\r\nso I can just use those instead.\r\n\r\nI also found some files that are not shared that should be in\r\nrenderers shared.\r\n\r\n* Found a few more shared dependencies\r\n\r\nrenderSubtreeIntoContainer is only used by the DOM renderer.\r\nIt's not an addon.\r\n\r\nReactClass isn't needed as a dependency since injection doesn't\r\nhappen anymore.\r\n\r\n* Use a shim file to load addons' dependencies on DOM\r\n\r\nBy replacing this intermediate file we can do the lazy loading\r\nwithout needing any lazy requires. This set up works with ES\r\nmodules.\r\n\r\nWe could also replace the globalShim thing with aliased files\r\ninstead for consistency.\r\n\r\n* Bundle DOM renderers into their individual UMD bundles\r\n\r\nInstead of exposing the entire DOM renderer on the react.js\r\npackage, I only expose CurrentOwner and ComponentTreeDevtool which\r\nare currently the only two modules that share __state__ with the\r\nrenderers.\r\n\r\nThen I package each renderer in its own package. That could allow\r\nus to drop more server dependencies from the client package. It\r\nwill also allow us to ship fiber as a separate renderer.\r\n\r\nUnminified DEV            after     before\r\nreact.js                  123kb     696kb\r\nreact-with-addons.js      227kb     774kb\r\nreact-dom.js              668kb     1kb\r\nreact-dom-server.js       638kb     1kb\r\n\r\nMinified PROD             after     before\r\nreact.min.js               24kb     154kb\r\nreact-with-addons.min.js   37kb     166kb\r\nreact-dom.min.js          149kb     1kb\r\nreact-dom-server.min.js   144kb     1kb\r\n\r\nThe total size for react.min.js + react-dom.min.js is +19kb larger\r\nbecause of the overlap between them right now. I'd like to see\r\nwhat an optimizing compiler can do to this. Some of that is fbjs\r\nstuff. There shouldn't need to be that much overlap so that's\r\nsomething we can hunt. We should keep isomorphic absolutely\r\nminimal so there's no reason for other React clones not to use it.\r\nThere will be less overlap with Fiber.\r\n\r\nHowever, another strategy that we could do is package the\r\nisomorphic package into each renderer bundle and conditionally\r\ninitialize it if it hasn't already been initialized. That way\r\nyou only pay an overlap tax when there are two renderers on the\r\npage but not without it. It's also easier to just pull in one\r\npackage. The downside is the versioning stuff that the separate\r\nnpm package would solve. That applies to CDNs as well.\r\n\r\nReactWithAddons is a bit weird because it is packaged into the\r\nisomorphic package but has a bunch of DOM dependencies. So we have\r\nto load them lazily since the DOM package gets initialized after.","distinct":true,"url":"https://api.github.com/repos/justingreenberg/react/commits/8ef00dbb7de944da0e7b14438baffd37df01bf37"},{"sha":"34c4474472d6877f970c3763de4769d2b98718ab","author":{"name":"Sebastian Markbåge","email":"b41fc187c6555e69a919eebe4470829dcc170cca@calyptus.eu"},"message":"Fix trailing build issues (#7450)\n\nUse relative path for addons UMD shim module\r\n\r\nUse explicit top level wrapper marker for top level elements","distinct":true,"url":"https://api.github.com/repos/justingreenberg/react/commits/34c4474472d6877f970c3763de4769d2b98718ab"},{"sha":"b1bffd42067892445febe3bdd5558cf1b362dfd2","author":{"name":"Justin Greenberg","email":"b4a5ea001e047040e8c9075b67a268293138da2c@justingreenberg.com"},"message":"Merge branch 'master' into feature/7415-freeze-type-defaultprops\n\n* master:\n  Fix trailing build issues (#7450)\n  Bundle DOM renderers into their individual UMD bundles (#7164)\n  Fix batchedUpdates return value (#7444)\n  Capitalize AJAX (#7435)\n  change a word in performance docs (#7442)","distinct":true,"url":"https://api.github.com/repos/justingreenberg/react/commits/b1bffd42067892445febe3bdd5558cf1b362dfd2"},{"sha":"58cd9bc560be8d088dc12ba8995c2170a83b08a0","author":{"name":"Justin Greenberg","email":"b4a5ea001e047040e8c9075b67a268293138da2c@justingreenberg.com"},"message":"update(iso/element): only freeze defaultProps","distinct":true,"url":"https://api.github.com/repos/justingreenberg/react/commits/58cd9bc560be8d088dc12ba8995c2170a83b08a0"}]}
{"actor":{"display_login":"justingreenberg"}}