Commit Graph

1966 Commits

Author SHA1 Message Date
Sebastian Markbage
3ea3274ca4 Clone on mount
This is the first step towards descriptors. This will start cloning the
component when it's mounted instead of mounting the first instance.

This avoids an issue where a reference to the first instance can hang around
in props. Since a mounted component gets mutated, the descriptor changes.

We don't need to clone the props object itself. Mutating the shallow props
object of a child that's passed into you is already flawed. Those cases need to
use cloneWithProps. A props object is considered shallow frozen after it leaves
the render it was created in.
2014-03-10 15:28:54 -07:00
Paul O’Shannessy
2ca810fbf3 Merge pull request #1225 from spicyj/cprop
Fix removing DOM property with mapped name
2014-03-10 11:29:10 -07:00
Pete Hunt
d9dd9d5cb3 Merge pull request #1235 from fxbois/master
Update 08-tooling-integration.md
2014-03-08 20:15:45 -08:00
fxbois
9ffd70c688 Update 08-tooling-integration.md
emacs compatibility
2014-03-08 18:12:05 +01:00
Jeff Morrison
9ce7ecc3d9 Merge pull request #1219 from syranide/jsxempty
Fix empty JSX expressions sometimes emitting erroneous commas
2014-03-07 21:23:55 -08:00
Paul O’Shannessy
9f9c8bcebf Merge pull request #1228 from spicyj/grunt-debug
Bring back `grunt test --debug`
2014-03-07 11:18:29 -08:00
Ben Alpert
9766ed5797 Bring back grunt test --debug 2014-03-06 22:11:55 -08:00
Ben Alpert
1d209248ef Remove obsolete __VERSION__ references 2014-03-06 20:33:06 -08:00
Ben Alpert
21e06196cd Fix removing DOM property with mapped name 2014-03-06 17:50:01 -08:00
Paul O’Shannessy
554b677e60 Merge pull request #1180 from evanc/master
Test that Node is a function before using instanceof on it
2014-03-06 11:02:28 -08:00
Andreas Svensson
aa70419f9d Fix empty JSX expressions sometimes emitting erroneous commas 2014-03-06 13:01:03 +01:00
Cheng Lou
af1b63456e Merge pull request #1222 from spicyj/npm-dl
[docs] Add more words to downloads page
2014-03-05 20:23:10 -08:00
Ben Alpert
ac3051530a [docs] Add more words to downloads page 2014-03-05 20:16:50 -08:00
Paul O’Shannessy
c5f56f318a Merge pull request #1208 from passy/patch-3
Fix docstring typo for pure render mixin
2014-03-05 19:13:22 -08:00
Paul O’Shannessy
be2c185888 Merge pull request #1211 from spicyj/freeze
Add Object.freeze to polyfill list
2014-03-05 12:18:20 -08:00
Paul O’Shannessy
7d0e6c6c0b Merge pull request #1192 from spicyj/srcset
Add srcSet attribute
2014-03-04 21:39:46 -08:00
Jing Chen
13aa8d37e6 Allow falsy values in statics
We found that the component would break if we set any statics with the
value 0. It turns out @chenglou already ran into this with
d71736b3ed but the statics code was copied
earlier, and still has this falsy check. Made the same change, updated
the unittest.
2014-03-04 18:15:49 -08:00
Kunal Mehta
06f762da77 Add Immutable
As titled. First of 3 diffs to add Immutable, ImmutableMap, and ImmutableObject. No logic changes.
2014-03-04 18:14:47 -08:00
Kunal Mehta
4ad320dd13 LegacyImmutableObject module
This copies the old implementation of ImmutableObject into LegacyImmutableObject.
2014-03-04 18:14:12 -08:00
Ben Newman
521201f121 Merge pull request #1215 from benjamn/fix-cloneWithProps-test
Fix stale usage of emptyObject in cloneWithProps-test.
2014-03-04 13:27:59 -05:00
Ben Newman
41d30bb7de Re-require cloneWithProps as well, for consistency.
And don't mock `emptyObject`, since that might actually replace it with a
mutable/non-frozen object.
2014-03-04 13:12:59 -05:00
Ben Newman
9c87aef67f Fix stale usage of emptyObject in cloneWithProps-test.
After we run `require('mock-modules').dumpCache()`, the object exported by
the `emptyObject` module will no longer be identical to previously
exported objects, so tests like `expect(component.refs).toBe(emptyObject)`
will fail.

Note that this behavior only manifests itself in tests, because of course
we do not call `dumpCache` in production code.

We could consider storing the `emptyObject` globally to thwart the effects
of `dumpCache`, but it's more idiomatic simply to re-`require` the latest
version of `emptyObject`.
2014-03-04 12:59:55 -05:00
Ben Alpert
ec8b0d7fbf Add srcSet attribute
Chrome beta supports this now: http://blog.chromium.org/2014/02/chrome-34-responsive-images-and_9316.html.
2014-03-03 17:12:00 -08:00
Ben Alpert
e954a1c0d9 Add Object.freeze to polyfill list 2014-03-03 15:55:19 -08:00
Paul O’Shannessy
1d27770b40 Fix verion-check to look in right place for React.js 2014-03-03 15:35:10 -08:00
Paul O’Shannessy
4c4446d283 Sync more vendored modules 2014-03-03 15:34:14 -08:00
Pete Hunt
a8fc3b940d Move UI-thread-only browser modules to browser/ui/
This also deletes an unused module.
2014-03-03 15:07:11 -08:00
Pete Hunt
6666538316 Unbreak refs
If no refs are rendered, `this.refs` is undefined. This is bad since it deopts & is hard to look for. Instead we should make `this.refs` an immutable empty object.
2014-03-03 15:06:57 -08:00
Sebastian Markbage
620c1bc2ff Add more owner context to monitoring
Always include context and specifically include the component that was missing a key.
2014-03-03 15:06:39 -08:00
Cheng Lou
99dab49f92 Refactor rendering to string without checksum & React ID
Finalize API for rendering to static markup.
Instead of passing a boolean option to `renderComponentToString`, just use another method.
2014-03-03 15:06:27 -08:00
Pete Hunt
9b0534eb77 ReactRAFBatchingStrategy
This will go in React addons only for now until we figure out `pendingState`.
2014-03-03 15:06:14 -08:00
Sebastian Markbage
eee04b19e1 Add monitor module for logging instrumentation
This adds an instrumentation hook for logging so that we can monitor invalid API
usage before we're ready to issue a warning.

I took the opportunity to update some console.warns to use the warning module
instead. The remaining console.warns
will be replaced by the warning module after we've cleaned up the callsites.
2014-03-03 15:05:53 -08:00
Cheng Lou
f734083a17 Better name for server-side rendering without React ID & checksum
"staticMarkup" sounds way better than "noChecksumNoID".
Also avoids some double negations.
2014-03-03 15:05:35 -08:00
Christoph Pojer
3fe9f9f336 Fix ReactPropTypesTest
children should never be defined as propType, so changing the test to use an actual prop.
2014-03-03 15:05:26 -08:00
Jan Kassens
e39c19423a temporarily disable warning 2014-03-03 15:05:10 -08:00
Cheng Lou
6203e53d16 Fix IE8 disabled input throwing on focus
When IE8 focuses a disabled item, it throws
This makes sure the we're not focusing the item during selection restoration/autofocus when the element's disabled.
2014-03-03 15:04:34 -08:00
Ben Alpert
88a4a566ae Merge pull request #1209 from petehunt/thinking-in-react
Add thinking in react to the official docs + cleanup
2014-03-03 10:40:28 -08:00
petehunt
2f6656e3e9 fix 2014-03-03 10:39:41 -08:00
petehunt
a0ecf47242 Add thinking in react to the official docs 2014-03-03 10:37:33 -08:00
Cheng Lou
4b670a08fa Merge pull request #1207 from passy/patch-2
Add missing backtick in complementary-tools.md
2014-03-02 16:21:35 -08:00
Pascal Hartig
6b78cfb0f4 Fix docstring typo for pure render mixin 2014-03-02 22:18:10 +00:00
Pascal Hartig
8df5e55efd Add missing backtick in complementary-tools.md 2014-03-02 22:10:24 +00:00
Pete Hunt
237adacc3a Merge pull request #1204 from jmingov/patch-1
Updated React Version to 0.9.0
2014-03-01 17:01:12 -08:00
Pete Hunt
90e996324a Merge pull request #1203 from fson/jsx-integrations
Merge the lists of JSX integrations in the docs.
2014-03-01 14:24:58 -08:00
3boll
b2649dd73b Updated React Version 0.9.0
**Updated Url's:**

CDN:

    http://fb.me/react-0.9.0.js

    http://fb.me/JSXTransformer-0.9.0.js

Starter Kit

    http://facebook.github.io/react/downloads/react-0.9.0.zip
2014-03-01 21:12:17 +01:00
Ville Immonen
0217461d16 Merge the lists of JSX integrations in the docs.
There were these two lists of JSX tools at Complimentary Tools
and Tooling Integration, that were a bit out of sync with each other.

Bring them together and add a link to the former from the latter.
2014-03-01 16:50:40 +02:00
Pete Hunt
3c4f45fe45 Merge pull request #1200 from ericflo/patch-1
Add Shirtstarter to examples of production apps.
2014-02-28 13:42:28 -08:00
Eric Florenzano
6485e21956 Add Shirtstarter to examples of production apps.
Shirtstarter is 100% built on React.
2014-02-28 13:40:14 -08:00
Paul O’Shannessy
ae72e6ef91 Merge pull request #1082 from spicyj/class-false
Ensure className={false} turns into string 'false'
2014-02-27 16:41:41 -08:00
Ben Alpert
298a05517e Tweak propTypes examples for clarity in oneOfType 2014-02-26 15:03:47 -08:00