Skip to content
This repository has been archived by the owner on Feb 12, 2022. It is now read-only.

Releases: facebookarchive/prepack

v0.2.43

13 Jul 17:55
Compare
Choose a tag to compare

stop abstract loops from getting stuck in infinite loops when body contains a return, throw or break completion
Object.assign should no longer lose values when snapshotting in certain cases
Allow optimize to work in conditional contexts
Move abstract Object.assign temporals into a helper function
new color scheme for the website
Add ability to rewrite generated code via global.output
adds an optimization to Object.assign that attempts to merge calls together where possible
Added --expectedCounts parameter to test262-runner so that success can depend on the value of the time-out and the version of the test suite that is used.
Updated the test262 submodule to latest version

v0.2.42

05 Jul 22:11
Compare
Choose a tag to compare

Improved source location information
Only havoc abstract value args when really necessary
Debugger recognizes sourcemaps and opens the correct file/line when debugging in Nuclide.
Make React tests fast
Special case an expression simplification for Instant Render
Fix temporal assignments to intrinsics that happen inside non deterministic loops
Enhanced handling of Array.map applied to abstract arrays
Support dynamic invariants via __assume
We got a logo!
Add React Native mocks to Prepack

v0.2.41

29 Jun 15:52
Compare
Choose a tag to compare
  • Bugfixes
  • Improve switch evaluation performance
  • Don't emit unnecessary calls

v0.2.40

21 Jun 16:18
Compare
Choose a tag to compare

Lots of bug fixes

v0.2.39

14 Jun 17:14
Compare
Choose a tag to compare
  • Perf improvements
  • Bugfixes
  • Rest syntax support (abstract interpreter support pending)
  • Debugger improvements
  • Migrate to CircleCI 2.0
  • Added support for && and || logical abstract value unfolding

v0.2.38

07 Jun 22:08
Compare
Choose a tag to compare
  • Adds __describe that can pretty print abstract values to assist debugging
  • Implemented step out feature in debugger

v0.2.36

25 May 17:48
Compare
Choose a tag to compare

Fixing havocing of bindings.
adds support for ReactDOM.createPortal inlining
Stop using joinEffectsAndPromoteNested
opt out of optimizing a React component in a tree with __doNotRender
if left and right in createFromConditionalOp are equal, do early return
all serializer tests now get linted via ESlint for correct output
all globals emitted reference the global identifier
Support for --delayInitializations for optimized functions
Fix abstract values not being coerced into strings for the Error constructor

v0.2.35

21 May 18:07
Compare
Choose a tag to compare

Support switch statements where the switch value is abstract and one or more cases throw.
Fixed bug with implicitly converting unknown values to Object.
The React reconciler now throw a FatalError upon encountering side-effects in a render.
Fix while and for loops with unlabeled breaks
Removing --simpleClosures option.
Improve code generation in presence of exceptions.
Default to StrictMode when mixed StrictMode is serialized between function entries.
Better debug logging with --debugScopes
Allocate by using new Array(n).
Fix problems with duplicated and missing statements.
Do not generate code for unreachable global code statements.
Simplify the ToObject serialization output.
Serialization outputFixes an issue with getOwnPropertyDescriptor when dealing with a native prototype function.
More compact code generation by avoiding introducing local variables for abstract values when possible.
Fixes problem with result of Array.filter (and similar) applied to arrays with unknown properties.
Adds support for spread syntax.
Speeding up Prepack by 22%, saving 8% memory.
Add reading wiki link to places.
Make some files flow strict.
Better crash logging.
Provide error feedback when timing out.
Implement const/let pattern declarations.
Adds support for more console methods.
More simplification rules.
Stop the prototype cycle check if an object (e.g. proxy) uses non-ordinary prototype methods.
Fix numerous problems with code ordering.

Issues fixed:
#415
#927
#1017
#1285
#1765
#1812
#1821
#1830
#1838
#1841
#1842
#1845
#1856
#1857
#1865
#1866
#1869
#1870
#1871
#1883
#1890
#1906
#1914
#1924
#1930
#1931
#1935
#1952
#1953
#1957

v0.2.34

03 May 17:57
Compare
Choose a tag to compare

Summary:
Allow break/continue to be guarded by abstract conditions inside loops
Collect fine-grained statistics on memory usage
Resolves issues with outer declarations moving into nested scopes
Fixes simplification bug involving comparisons with NaN
Support temporal assignment to object properties using unknown property names
Support multiple assignments to unknown properties in optimized functions
Adds ReactDOM mocks to fb-www compatibility mode
Adds pure scope support for abstract arguments with UpdateExpression
Fixed code duplication bug
10% memory savings when running Prepack

Lots of bug fixes, especially around optimized functions.

0.2.33

27 Apr 21:35
Compare
Choose a tag to compare
  • test-react now gets run before test-serializer-with-coverage on the CI
  • fixes a regression where on* events would not be stripped in React firstRender mode
  • Use 66% less memory, run 42% faster