Update LICENSE
Revert "Update LICENSE"

This reverts commit dd1d49b3609a0eace533a2d55b6b1f2842f960f8.

The license is actually supposed to look like that. That section is
boilerplate for others to apply the license to their own work. See
immediately above...

> To apply the Apache License to your work, attach the following
> boilerplate notice, with the fields enclosed by brackets "[]"
> replaced with your own identifying information. (Don't include
> the brackets!)
Normalize DefaultDOMPropertyConfig

For consistency, use lowerCamelCase for all props in `DefaultDOMPropertyConfig`.
Remove remaining calls to ReactCompositeComponent.autoBind.

This is causing console.warning spew in the open source tests.
Use populist v0.1.2 to bundle test modules instead of browserify.

This will allow full support for mocking, dumpCache, and correct line
numbers in error messages.
Call require("mock-modules").register in every mockable module.

Mocking happens only when config.constants.__MOCK__ is true.
Enable module.exports mocking in react-test.js.

We don't currently attempt to mock modules automatically, but we do
respect require("mock-modules").mock, .dontMock, and .dumpCache.

I'm going to keep investigating auto-mocking, since that would move us
much closer to the behavior used within Facebook.

Closes #154.
Closes #155.
Store dirtyMocks array globally so it can survive dumpCache().

When require("mock-modules").dumpCache() is called, all mock functions
previously created continue to refer to the old dirtyMocks array.

If we replace that array with a new one, those mock functions will never
have their .mockClear() methods called again.

The upstream version of mocks.js pulls a similar global trick, and I never
understood why until now.
Use a separate grunt/config/jsx config file for tests.

No longer injecting __MOCK__ as a global constant (it's just a config
property now).

Turns out the `grunt jsx:debug` task was never necessary for tests.
Merge pull request #193 from benjamn/use-populist-for-testing

Fix tests
Sync vendor modules from FB.

Biggest win here is that we'll strip out the console.error from
EventListener and we won't need to suggest people use a console
polyfill with the minified build.
[React Children] Step One: Refactor flattenChildren

Refactoring `flattenChildren` so that the traversal code is reusable
for other purposes.
[React Children] Step Two:  Use `traverseChildren` to perform `mapChildren`

Use the new `traverseChildren` utility to perform `mapChildren`.
The goal is to get as close to the bavior of the semantics of
`Array.prototype.map`, but also in a way that understands deeply nested arrays
and objects.
[React Children] Step Three: New test case for `traverseChildren`.

If we're going to build utilities off of this, we should have good test
coverage.
Controlled <select> and <option> Components

This implements a `<select>` component that supports `value` and `defaultValue`. It also changes `<option>` to warn when the `selected` prop is supplied.
Fix Markup Rendering in IE

This fixes known browser bugs with rendering markup using `innerHTML` in IE ([[http://support.microsoft.com/kb/276228 | here is an example of one]]).

This is a subset of what `HTML` (and jQuery) does, and we should eventually consider pulling it out into a separate module to reduce code duplication. For now, this is the minimal set of changes needed to unbreak React in production.

We can afford to use a subset of what `HTML` does because we have the luxury of knowing that the markup is generated sanely with proper closing tags, etc.
add missing argument to invariant in ReactDOMSelect
Fix rootElementsByReactRootID bookkeeping in ReactMount.js.

It's not always possible to update `rootElementsByReactRootID` when the
contents of the container are re-rendered; for instance, when we call
`dangerouslyReplaceNodeWithMarkup` or `dangerouslySetInnerHTML`. Since
this bookkeeping is just trying to warn about potentially problematic
manipulations of the root element, and we can be relatively sure that a
new element with the same ID is logically the same element, this diff
avoids warning in such cases.
Use populist for building jasmine test harness package.

We're using populist for building the bundle of test modules and their
dependencies, so it seems worthwhile for consistency to do the same for
the test harness.
Merge pull request #194 from benjamn/build-jasmine-bundle-with-populist

Use populist for building jasmine test harness bundle