Skip to content

Commit

Permalink
Move version to standalone module in preparation for reuse
Browse files Browse the repository at this point in the history
  • Loading branch information
zpao committed Sep 8, 2015
1 parent b01af40 commit 58d6298
Show file tree
Hide file tree
Showing 6 changed files with 23 additions and 8 deletions.
7 changes: 1 addition & 6 deletions grunt/tasks/version-check.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,6 @@

var grunt = require('grunt');

// Check that the version we're exporting is the same one we expect in the
// package. This is not an ideal way to do this, but makes sure that we keep
// them in sync.
var reactVersionExp = /\bReact\.version\s*=\s*['"]([^'"]+)['"];/;

module.exports = function() {
var pkgVersion = grunt.config.data.pkg.version;

Expand All @@ -19,7 +14,7 @@ module.exports = function() {
'packages/react-addons/package.json (version)': addonsData.version,
// Get the "version" without the range bit
'packages/react-addons/package.json (react dependency)': addonsData.peerDependencies.react.slice(1),
'src/React.js': reactVersionExp.exec(grunt.file.read('./src/React.js'))[1],
'src/ReactVersion.js': require('../../src/ReactVersion'),
};

// Return true (ok) or false (failed)
Expand Down
3 changes: 1 addition & 2 deletions src/React.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ var ReactIsomorphic = require('ReactIsomorphic');
var assign = require('Object.assign');
var deprecated = require('deprecated');

// `version` will be added here by ReactIsomorphic.
var React = {};

assign(React, ReactIsomorphic);
Expand Down Expand Up @@ -63,6 +64,4 @@ assign(React, {
),
});

React.version = '0.14.0-beta3';

module.exports = React;
14 changes: 14 additions & 0 deletions src/ReactVersion.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*
* @providesModule ReactVersion
*/

'use strict';

module.exports = '0.14.0-beta3';
3 changes: 3 additions & 0 deletions src/isomorphic/ReactIsomorphic.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ var ReactDOMFactories = require('ReactDOMFactories');
var ReactElement = require('ReactElement');
var ReactElementValidator = require('ReactElementValidator');
var ReactPropTypes = require('ReactPropTypes');
var ReactVersion = require('ReactVersion');

var assign = require('Object.assign');
var onlyChild = require('onlyChild');
Expand Down Expand Up @@ -64,6 +65,8 @@ var React = {
// since they are just generating DOM strings.
DOM: ReactDOMFactories,

version: ReactVersion,

// Hook for JSX spread, don't use this for anything else.
__spread: assign,
};
Expand Down
2 changes: 2 additions & 0 deletions src/renderers/dom/ReactDOM.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ var ReactMount = require('ReactMount');
var ReactPerf = require('ReactPerf');
var ReactReconciler = require('ReactReconciler');
var ReactUpdates = require('ReactUpdates');
var ReactVersion = require('ReactVersion');

var findDOMNode = require('findDOMNode');
var renderSubtreeIntoContainer = require('renderSubtreeIntoContainer');
Expand All @@ -34,6 +35,7 @@ var React = {
findDOMNode: findDOMNode,
render: render,
unmountComponentAtNode: ReactMount.unmountComponentAtNode,
version: ReactVersion,

/* eslint-disable camelcase */
unstable_batchedUpdates: ReactUpdates.batchedUpdates,
Expand Down
2 changes: 2 additions & 0 deletions src/renderers/dom/ReactDOMServer.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,14 @@

var ReactDefaultInjection = require('ReactDefaultInjection');
var ReactServerRendering = require('ReactServerRendering');
var ReactVersion = require('ReactVersion');

ReactDefaultInjection.inject();

var ReactDOMServer = {
renderToString: ReactServerRendering.renderToString,
renderToStaticMarkup: ReactServerRendering.renderToStaticMarkup,
version: ReactVersion,
};

module.exports = ReactDOMServer;

0 comments on commit 58d6298

Please sign in to comment.