Skip to content
This repository was archived by the owner on Apr 20, 2018. It is now read-only.

Commit 36acb83

Browse files
Initial perf explorations
1 parent d56d837 commit 36acb83

13 files changed

Lines changed: 6004 additions & 10 deletions

Gruntfile.js

Lines changed: 181 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1524,6 +1524,175 @@ var browsers = [{
15241524
'src/core/suboutro.js'
15251525
],
15261526
dest: 'dist/rx.sorting.js'
1527+
},
1528+
liteperf: {
1529+
src: [
1530+
'src/core/license.js',
1531+
'src/core/intro.js',
1532+
'src/core/liteheader.js',
1533+
1534+
// Stack trace start
1535+
'src/core/longstackbegin.js',
1536+
'src/core/longstacktraces.js',
1537+
1538+
'src/core/enumeratorheader.js',
1539+
1540+
'src/core/internal/bindcallback.js',
1541+
'src/core/internal/dontenums.js',
1542+
'src/core/internal/isequal.js',
1543+
'src/core/internal/util.js',
1544+
'src/core/internal/priorityqueue.js',
1545+
'src/core/disposables/compositedisposable.js',
1546+
'src/core/disposables/disposable.js',
1547+
'src/core/disposables/booleandisposable.js',
1548+
'src/core/disposables/refcountdisposable.js',
1549+
1550+
'src/core/concurrency/scheduleditem.js',
1551+
'src/core/concurrency/scheduler.js',
1552+
'src/core/concurrency/scheduler.recursive.js',
1553+
'src/core/concurrency/scheduler.periodic.js',
1554+
'src/core/concurrency/immediatescheduler.js',
1555+
'src/core/concurrency/currentthreadscheduler.js',
1556+
'src/core/concurrency/scheduleperiodicrecursive.js',
1557+
'src/core/concurrency/timeoutscheduler.js',
1558+
1559+
'src/core/notification.js',
1560+
'src/core/internal/enumerator.js',
1561+
'src/core/internal/enumerable.js',
1562+
'src/core/observer-lite.js',
1563+
'src/core/perf/observers.js',
1564+
'src/core/abstractobserver.js',
1565+
'src/core/anonymousobserver.js',
1566+
'src/core/anonymousobserver-extensions.js',
1567+
'src/core/observable.js',
1568+
'src/core/perf/observable-extensions.js',
1569+
'src/core/perf/safeobserver.js',
1570+
'src/core/perf/producer.js',
1571+
'src/core/perf/sink.js',
1572+
'src/core/scheduledobserver.js',
1573+
1574+
// Creation
1575+
'src/core/linq/observable/toarray.js',
1576+
'src/core/linq/observable/create.js',
1577+
'src/core/linq/observable/defer.js',
1578+
'src/core/linq/observable/empty.js',
1579+
'src/core/linq/observable/from.js',
1580+
'src/core/linq/observable/fromarray.js',
1581+
'src/core/linq/observable/never.js',
1582+
'src/core/linq/observable/of.js',
1583+
'src/core/linq/observable/pairs.js',
1584+
'src/core/linq/observable/range.js',
1585+
'src/core/linq/observable/repeat.js',
1586+
'src/core/linq/observable/return.js',
1587+
'src/core/linq/observable/throw.js',
1588+
1589+
// Multiple
1590+
'src/core/linq/observable/catchproto.js',
1591+
'src/core/linq/observable/catch.js',
1592+
'src/core/linq/observable/combinelatestproto.js',
1593+
'src/core/linq/observable/combinelatest.js',
1594+
'src/core/linq/observable/concatproto.js',
1595+
'src/core/linq/observable/concat.js',
1596+
'src/core/linq/observable/concatall.js',
1597+
'src/core/linq/observable/mergeproto.js',
1598+
'src/core/linq/observable/merge.js',
1599+
'src/core/linq/observable/mergeall.js',
1600+
'src/core/linq/observable/skipuntil.js',
1601+
'src/core/linq/observable/switch.js',
1602+
'src/core/linq/observable/takeuntil.js',
1603+
'src/core/linq/observable/withlatestfrom.js',
1604+
'src/core/linq/observable/zipproto.js',
1605+
'src/core/linq/observable/zip.js',
1606+
'src/core/linq/observable/ziparray.js',
1607+
1608+
// Single
1609+
'src/core/linq/observable/asobservable.js',
1610+
'src/core/linq/observable/dematerialize.js',
1611+
'src/core/linq/observable/distinctuntilchanged.js',
1612+
'src/core/linq/observable/do.js',
1613+
'src/core/linq/observable/finally.js',
1614+
'src/core/linq/observable/ignoreelements.js',
1615+
'src/core/linq/observable/materialize.js',
1616+
'src/core/linq/observable/repeatproto.js',
1617+
'src/core/linq/observable/retry.js',
1618+
'src/core/linq/observable/retrywhen.js',
1619+
'src/core/linq/observable/scan.js',
1620+
'src/core/linq/observable/skiplast.js',
1621+
'src/core/linq/observable/startwith.js',
1622+
'src/core/linq/observable/takelast.js',
1623+
1624+
// Standard Query Operators
1625+
'src/core/linq/observable/concatmap.js',
1626+
'src/core/perf/operators/map.js',
1627+
'src/core/linq/observable/pluck.js',
1628+
'src/core/linq/observable/selectmany.js',
1629+
'src/core/linq/observable/selectswitch.js',
1630+
'src/core/linq/observable/skip.js',
1631+
'src/core/linq/observable/skipwhile.js',
1632+
'src/core/linq/observable/take.js',
1633+
'src/core/linq/observable/takewhile.js',
1634+
'src/core/linq/observable/where.js',
1635+
1636+
// Async Operators
1637+
'src/core/linq/observable/fromcallback.js', // AsyncSubject, asObservable
1638+
'src/core/linq/observable/fromnodecallback.js', // AsyncSubject, asObservable
1639+
'src/core/linq/observable/fromevent-modern.js', // publish
1640+
'src/core/linq/observable/fromeventpattern.js', // publish
1641+
'src/core/linq/observable/frompromise.js', // AsyncSubject, asObservable
1642+
'src/core/linq/observable/topromise.js',
1643+
'src/core/linq/observable/startasync.js',
1644+
1645+
// Binding Operators
1646+
'src/core/linq/observable/multicast.js', // ConnectableObservable
1647+
'src/core/linq/observable/publish.js', // mulitcast, Subject
1648+
'src/core/linq/observable/share.js', // mulitcast, Subject, Reference counted
1649+
'src/core/linq/observable/publishlast.js', // multicast, AsyncSubject
1650+
'src/core/linq/observable/publishvalue.js', // multicast, BehaviorSubject
1651+
'src/core/linq/observable/sharevalue.js', // multicast, BehaviorSubject, Reference counted
1652+
'src/core/linq/observable/replay.js', // multicast, ReplaySubject
1653+
'src/core/linq/observable/sharereplay.js',
1654+
'src/core/linq/connectableobservable.js',
1655+
1656+
// Time operators
1657+
'src/core/linq/observable/_observabletimerdate.js', // AnonymousObservable
1658+
'src/core/linq/observable/_observabletimerdateandperiod.js', // AnonymousObservable, normalizeTime
1659+
'src/core/linq/observable/_observabletimertimespan.js', // AnonymousObservable, normalizeTime
1660+
'src/core/linq/observable/_observabletimertimespanandperiod.js', // AnonymousObservable, defer, _observabletimerdateandperiod
1661+
'src/core/linq/observable/interval.js', // timeoutScheduler, _observabletimertimespanandperiod
1662+
'src/core/linq/observable/timer.js', // timeoutScheduler, _observabletimerdate, _observabletimerdateandperiod, _observabletimertimespan, _observabletimertimespanandperiod
1663+
'src/core/linq/observable/delay.js', // AnonymousObservable, timeoutScheduler, SerialDisposable, materialize, timestamp
1664+
'src/core/linq/observable/debounce.js', // AnonymousObservable, SerialDisposable, timeoutScheduler, SingleAssignmentDisposable, CompositeDisposable
1665+
'src/core/linq/observable/timestamp.js', // timeoutScheduler, select
1666+
'src/core/linq/observable/sample.js', // AnonymousObservable, CompositeDisposable, interval, timeoutScheduler
1667+
'src/core/linq/observable/timeout.js', // AnonymousObservable, timeoutScheduler, throw, SingleAssignmentDisposable, SerialDisposable, CompositeDisposable
1668+
'src/core/linq/observable/throttlefirst.js',
1669+
1670+
// Backpressure operators
1671+
'src/core/backpressure/pausable.js',
1672+
'src/core/backpressure/pausablebuffered.js',
1673+
'src/core/backpressure/controlled.js',
1674+
1675+
// Transducers
1676+
'src/core/linq/observable/transduce.js',
1677+
1678+
'src/core/anonymousobservable.js',
1679+
'src/core/autodetachobserver.js',
1680+
'src/core/subjects/innersubscription.js',
1681+
'src/core/subjects/subject.js',
1682+
'src/core/subjects/asyncsubject.js',
1683+
'src/core/subjects/anonymoussubject.js',
1684+
'src/core/subjects/behaviorsubject.js',
1685+
'src/core/subjects/replaysubject.js',
1686+
'src/core/backpressure/pauser.js',
1687+
1688+
'src/core/exports.js',
1689+
1690+
// End long stack traces
1691+
'src/core/longstackend.js',
1692+
1693+
'src/core/outro.js'
1694+
],
1695+
dest: 'dist/rx.lite.perf.js'
15271696
}
15281697
},
15291698
uglify: {
@@ -1663,6 +1832,13 @@ var browsers = [{
16631832
sourceMapName: 'dist/rx.sorting.map'
16641833
},
16651834
files: {'dist/rx.sorting.min.js': ['dist/rx.sorting.js'] }
1835+
},
1836+
liteperf: {
1837+
options: {
1838+
sourceMap: true,
1839+
sourceMapName: 'dist/rx.lite.perf.map'
1840+
},
1841+
files: {'dist/rx.lite.perf.min.js': ['dist/rx.lite.perf.js'] }
16661842
}
16671843
},
16681844
qunit: {
@@ -1965,4 +2141,9 @@ var browsers = [{
19652141
'qunit'
19662142
]);
19672143

2144+
grunt.registerTask('perf', [
2145+
'concat:liteperf',
2146+
'uglify:liteperf'
2147+
]);
2148+
19682149
};

0 commit comments

Comments
 (0)