Victor Berchet
e8a6c95e2a
feat(VmTurnZone): Rework the implementation to minimize change detection runs
...
Before this PR there were only 2 zones: root zone = outer zone > inner
zone.
This PR creates the outer zone as a fork of the root zone: root > outer
> inner.
By doing this it is possible to detected microtasks scheduling in the
outer zone and run the change detection less often (no more than one
time per VM turn).
The PR also introduce a Promise monkey patch for the JS implementation.
It makes Promises aware of microtasks and again allow running the change
detection only once per turn.
2015-05-12 21:03:24 +02:00
Tim Blasi
4320859e1b
chore(dart): Copy css resources in build
...
Include css resources in the files copied to the dist/dart directory.
This fixes 404s occuring when testing the todo/ app.
2015-05-12 10:02:00 -07:00
Kevin Moore
98e7a38e50
chore: use SDK dartfmt
2015-05-12 09:56:38 -07:00
Tim Blasi
44f829dbc6
feat(dart/transform): Use the render Compiler and the DirectiveParser
...
Update the `TemplateCompile` step to use the full render `Compiler`.
Provide `DirectiveMetadata` for `ViewDefinition` objects and use it to
run the `DirectiveParser` step of the render compile pipeline.
2015-05-08 11:18:40 -07:00
vsavkin
fa28b28d0a
build(typescript): Migrated change detection to typescript
2015-05-07 17:18:04 -07:00
Caitlin Potter
a58c9f83bd
fix(brocolli): escape special regexp characters when building regexps
...
Special regexp tokens were allowed unchanged previously, which incorrectly broke
the include/exclude behaviour. Now, they're escaped first.
Closes #1721
Closes #1752
2015-05-07 19:01:12 -04:00
Alex Eagle
1daa8aa3a1
chore(shrinkwrap): update dependencies to latest
...
Also, our package.json was out-of-sync with npm-shrinkwrap.json; see https://github.com/angular/angular/issues/1737
This includes a fix for the shrinkwrapping of ts2dart; see https://github.com/angular/ts2dart/issues/138
2015-05-07 14:29:43 -07:00
Caitlin Potter
aaf3edd131
build(brocolli): move filename filtering into DiffingPluginWrapper
...
Closes #1719
2015-05-07 17:00:35 -04:00
Julie Ralph
01fdb4afc6
chore(build): remove karma preprocessors
...
Custom karma preprocessors are no longer being used after 1676 and 1597
2015-05-06 14:06:40 -07:00
Igor Minar
1d0078415f
build(broccoli): refactor typescript plugin to be incremental via DiffingBroccoliPlugin
2015-05-06 07:45:46 -07:00
Igor Minar
3f36a3c119
build(broccoli): traceur plugin should react only to .js/.es6/.cjs file removal
2015-05-06 07:45:46 -07:00
Igor Minar
8c15ccecd1
build(broccoli): add DiffingBroccoliPlugin and refactor existing plugins to use it
...
tree-differ:
- export both TreeDiffer and DiffResult interface
diffing-broccoli-plugin:
- factory class for wrapping DiffingBroccoliPlugins and turning them into BroccoliTrees
broccoli-dest-copy:
- refactor into DiffingBroccoliPlugin
broccoli-traceur:
- refactor into DiffingBroccoliPlugin
2015-05-06 07:45:45 -07:00
Igor Minar
e966869744
build(broccoli.d.ts): add tree.description signature
2015-05-06 07:45:45 -07:00
Julie Ralph
bb6f59e423
chore(build): make karma watch broccoli output for dart unit tests
...
Previously, karma used a custom preprocessor. Instead, have karma
run built dart from the `dist` folder and use gulp and broccoli
to watch for changes.
2015-05-05 19:24:20 -07:00
Alex Eagle
3c77855b39
chore(build): Remove .es6 files which shadow .ts files.
...
This removes .es6 files which are pure duplicates of a
.ts file in the same folder.
Next we need to remove .js files as well, and remove karma preprocessors for dart.
2015-05-01 09:51:03 -07:00
vsavkin
e4342743c0
feat(benchmark): added an implementation of the tree benchmark in React
2015-04-30 18:12:21 -07:00
Rado Kirov
fb67e37339
feat(decorators): adds decorators to be used by TS and Babel transpiled apps.
2015-04-29 15:13:25 -07:00
Alex Eagle
511e832ee2
chore(build): Karma watches broccoli output.
...
This is a prerequisite for switching to TypeScript. We need to remove the Traceur preprocessor
from Karma, so we have the build specified in a single place (broccoli tree def'n).
2015-04-29 14:15:45 -07:00
Marc Laval
a51a5c2968
chore(build): run forms tests in Node
...
Closes #1565
2015-04-29 13:58:07 +02:00
Alex Eagle
4c1e978536
cleanup(build): remove traceur-based Dart transpiler
2015-04-28 16:25:10 -07:00
Kevin Moore
867705bd2c
chore: put everything in the _analyze.dart file
...
6x faster dart analyze
2015-04-27 16:13:20 -07:00
Igor Minar
2827ca1559
build(broccoli): add a tree-differ workaround to browser trees
2015-04-27 10:50:59 -07:00
Igor Minar
8ea03d0380
build(gulp): fix incremental compilation by reusing angularBuilder across watch re-reruns
2015-04-27 10:47:52 -07:00
Igor Minar
0a97f0b645
build(js.cjs): re-enable tests that now pass in cjs
...
previously these tests were failing but now they pass on master
2015-04-27 10:47:52 -07:00
Igor Minar
a52798543a
build(gulp): rename tasks `build.broccoli.tools` => `build.tools` + `test.unit.broccoli` => `test.unit.tools`
2015-04-27 10:47:51 -07:00
Igor Minar
1cbdb9cd17
refactor(build): introduce AngularBuilder facade and clean up many things
2015-04-27 10:47:51 -07:00
Igor Minar
4c9b8ebb0c
build(gulp): remove obsolete gulp transformer
2015-04-27 10:47:51 -07:00
Igor Minar
7740fc071c
build(broccoli): convert traceur and broccoli-dest-copy plugins to use tree-differ
...
Also adding symlink-or-copy to our npm dependencies since our plugins now use it.
2015-04-27 10:47:50 -07:00
Igor Minar
bdf6af9bd6
build(broccoli): add custom broccoli.d.ts file
2015-04-27 10:47:50 -07:00
Igor Minar
2f83efaac8
build(broccoli): add tree-differ for diffing broccoli trees
2015-04-27 10:47:49 -07:00
Igor Minar
32c5ab956c
build(broccoli): add testing infrastructure for our build plugins
...
components:
- gulp test.unit.broccoli task
- mock-fs for mocking our FS in unit tests
- jasmine d.ts file for type checking
jasmine lib is provided by minijasmine2 so we don't need to include it explicitly
2015-04-27 10:47:49 -07:00
Igor Minar
725f909ff8
chore(build): refactor test.unit.cjs to use the broccoli pipeline
...
This change solves several problems:
- the broccoli pipeline is used to compile the node/cjs tree upon any change to the modules/ directory
- jasmine tests run in a new process removing the need to clean up environment after each test
- since we transpile only those test files that are actually needed for node/cjs build, we transpile less and don't need to filter out tests
2015-04-27 10:47:49 -07:00
Alex Eagle
623edcd2d8
Copy a second package to TypeScript.
2015-04-24 15:49:04 -07:00
Tobias Bosch
14a7b9f794
fix(jsserve): serve empty favicon to prevent errors in benchmarks
...
Background: our benchmarks check whether there were errors
in the browser log after they executed.
2015-04-21 11:25:07 -07:00
vsavkin
8b3c808cb0
cleanup: remove an unused type
2015-04-20 14:24:16 -07:00
Yegor Jbanov
2b4d30d931
chore(analysis): analyze everything in lib folders recursively; fix existing warnings
2015-04-17 13:52:02 -07:00
Yegor Jbanov
3dc4df2ffa
chore(analysis): analyze web folders; fix existing warnings
2015-04-17 13:52:02 -07:00
Igor Minar
8906cdbab8
chore(build): trigger npm postinstall when npm install is skipped
...
we temporarily need this because some of our dependencies are being installed via npm postinstall
2015-04-16 16:58:28 -07:00
Igor Minar
371c8b8a1c
chore(travis): add npm/install-dependencies.sh step in preparation for caching
2015-04-16 16:58:28 -07:00
Igor Minar
eb87f5f851
chore(npm): add shrinkwrap to our project
2015-04-16 16:58:28 -07:00
Kevin Moore
6600ac7031
chore: Fix missing analysis for lib and web directories
...
Pending issue to fix analyzer items in web: https://github.com/angular/angular/issues/1392
2015-04-15 20:58:29 -07:00
Kevin Moore
dc9c614da2
chore: break out warnings vs hints in build/analyze.dart
...
give a better report of errors
2015-04-15 15:46:16 -07:00
Jeremy Elbourn
f149ae79c6
feat(material): first ng2 material design components
2015-04-14 16:15:35 -07:00
Rado Kirov
ffe13078e5
feat(bundle): add script to push bundles to code.angularjs.org
...
Copied over from angular js 1.x.
2015-04-14 14:50:53 -07:00
Martin Probst
ef6e0d8eb8
chore(build): remove obsolete html.js, copy.js, srcFolderInsertion.
2015-04-14 11:54:36 -07:00
Martin Probst
db97d73c3b
feat(build): Move HTML copying into the broccoli task.
...
This includes all tasks to construct a Dart tree, except for formatting, and
reverse engineers/refactors the various copy tools for added more sanity.
2015-04-14 11:54:31 -07:00
Rado Kirov
3177576ad6
feat(bundle): adds a self-executing dev bundle (SFX).
2015-04-13 18:05:53 -07:00
Alex Eagle
896a0457f8
refactor(build): Better encapsulate the broccoli builder.
2015-04-13 17:28:00 -07:00
Igor Minar
0107543a33
chore(build): move build/transformCJSTests task to broccoli
2015-04-13 16:52:08 -07:00
Alex Eagle
70433e6b73
chore(build): use a Filter plugin to write the dest folder.
...
This lets broccoli keep the dest folder up-to-date in 'watch' mode,
so we should be able to use that for Karma.
2015-04-13 15:51:33 -07:00
Alex Eagle
34501aaae6
chore(build): move more broccoli support inside the TypeScript boundary
2015-04-13 12:24:28 -07:00
Igor Minar
dbfc4c1c16
chore(build): inline Traceur options just like we do everywhere
2015-04-13 11:37:18 -07:00
Igor Minar
301863b105
chore(build): transpile only e2e test code into cjs
2015-04-13 11:31:14 -07:00
Igor Minar
ef8dc40492
chore(build): correct comment
2015-04-13 11:31:14 -07:00
Igor Minar
6dbd4d969b
chore(build): create es5build.js only for files that will become es6 npm packages
2015-04-13 11:31:14 -07:00
Igor Minar
3dd0ac1f0a
chore(build): move dart broccoli tree to make-broccoli-tree
2015-04-13 11:20:59 -07:00
Igor Minar
1f6c6dbf2f
chore(build): refactor broccoli trees to generate them in order to reduce duplication
2015-04-13 10:07:31 -07:00
Alex Eagle
daf0f472b3
feat(build): enforce formatting of some files.
...
Our style guide includes formatting conventions. Instead of wasting time in reviewing PRs discussing things like indenting, and to avoid later deltas to fix bad formatting in earlier commits, we want to enforce these in the build.
The intent in this change is to fail the build as quickly as possible in travis, so those sending a PR immediately know they should run clang-format and update their commit. When running locally, we want users to know about formatting, but they may not want to act on it immediately, until they are done working. For this reason, it is only a warning outside of the continuous build.
This is done by having a check-format task which should run on most local builds, and an enforce-format task only run by travis.
2015-04-11 18:39:28 -07:00
Martin Probst
a3decad4c2
feat(build): Use broccoli for ts2dart transpilation.
2015-04-11 16:26:44 -07:00
Alex Eagle
2ed7622239
chore(build): compile the .ts broccoli tools.
...
This avoids having to check in the compiled .js files.
2015-04-10 17:29:32 -07:00
Martin Probst
4e2316c742
feat(build): Add rudimentary TS typings for broccoli.
2015-04-10 16:37:24 -07:00
Alex Eagle
f0477e164a
chore(build): add typescript to the cjs build.
...
Refactor the file extension logic in traceur plugin to simplify
2015-04-10 15:22:03 -07:00
Igor Minar
ea58ef85fc
chore(build): move the js.prod build over to broccoli
2015-04-10 13:11:58 -07:00
Alex Eagle
564477b8a0
chore(build): migrate build.js.cjs to broccoli.
...
This doesn't do the typescript part of the build yet. Also there is a bit
of hackiness left to resolve in a follow-up change.
2015-04-10 11:39:48 -07:00
Martin Probst
838aa2aaa9
fix(ts2dart): Adjust to new ts2dart API.
2015-04-09 18:03:27 -07:00
Martin Probst
3285ffba16
fix(traceur): Fix a couple of unsupported or incorrect tests.
2015-04-09 18:03:27 -07:00
Martin Probst
17e8857efc
feat(dart): Use ts2dart for transpilation in Karma Dart.
2015-04-09 18:03:27 -07:00
Martin Probst
70cea03b4b
fix(build): Only return directories from subDirs()
2015-04-09 18:03:26 -07:00
Alex Eagle
b94b04c074
chore(build): Migrate remaining tasks under build.js.dev to broccoli.
2015-04-09 14:09:38 -07:00
Alex Eagle
a3097aaf05
chore(build): Migrate build.js.dev fully to broccoli.
...
The previous change did the ES6 transpile, now we add ES5.
The sourcemaps are broken, but were also broken previously. We'll address that separately.
2015-04-09 11:00:47 -07:00
Alex Eagle
de581ea8b3
chore(build): Move broccoli support to own module.
...
Add support for multiple pipelines in different Brocfile's.
2015-04-08 10:41:42 -07:00
Rado Kirov
c349eb4fa4
fix(bundles): remove work-around rx.js module detection.
...
Updates rx to the newest version, because a fix is needed.
Closes #1245
2015-04-08 11:01:01 +02:00
Alex Eagle
d6003ee0ab
chore(build): Add traceur transpiler for broccoli.
...
This exactly reproduces the output tree from one of the gulp tasks, which is now removed.
Next step is to migrate another sibling task to broccoli.
2015-04-07 16:38:02 -07:00
Alex Eagle
bc248e9a15
fix(build) use relative path in file property inside sourcemap
2015-04-07 12:53:06 -07:00
Tim Blasi
42c0171b40
chore(dart/transform): Create targets for serving transformed Dart code
...
- Allow pub (build|serve) to specify mode
- Update pubbuild.js & pubserve.js to allow the caller to provide a `mode` value.
- Update settings to allow the di benchmark to be transformed to run statically.
2015-04-07 10:57:01 -07:00
Rado Kirov
bcbed2812d
feat(bundle): work-around rx.all.js bundle issue.
...
Adds long-stack-trace-zone into the dev build. Turn off source maps
until proper concatination of them is added.
2015-04-02 19:54:07 -07:00
Rob Wormald
c0b04ca0bc
feat(gulp): adds System.register bundle task.
2015-04-02 19:54:06 -07:00
Alex Eagle
91e0e9e1dd
chore(ts): Patch traceur's type module only when targetting es6 output.
2015-04-01 10:39:06 -07:00
Pawel Kozlowski
aca4604879
feat(CSSClass): support binding to classList
...
Closes #876
2015-03-31 21:53:24 +02:00
Caitlin Potter
9d21a6f40d
chore(package.json): upgrade traceur to v0.0.87
...
Fix in source-map test to follow through the sourcemap chain.
2015-03-26 18:37:03 -07:00
vsavkin
9b3b3d325f
feat(facade): added support for observables
2015-03-24 13:45:39 -07:00
Patrice Chalin
83402930f2
chore(install+test): single cmd to full install/test & test JS w/o Dart
...
* `npm install` now does a full install; auxiliary installation steps
have been integrated into the `postinstall` script.
* Updated developer docs `DEVELOPER.md` accordingly; also added
instructions to dev docs for performing full tests (via `npm test`) --
same as those run on Travis.
* Reorg in tests so that JS tests can run without a Dart env.
Partly fixes #945 **under the assumption that when running JS tests
locally, `ChromeCanary` is the desired browser to use**. Note that CI
tests (Travis) still uses `DartiumWithWebPlatform` across the board
(Maybe because ChromeCanary isn't being installed?)
Fixes #1012 .
Closes #1010
2015-03-21 14:55:11 -07:00
gdi2290
b61b8d60b7
refactor(forEach): change to for-of with iterable
...
rename: foreach -> for
rename: array -> iterable
update: DartParseTreeWriter
update: naive_infinite_scroll
update: todo
fix: tests in foreach_spec
Closes #919
2015-03-21 14:19:21 -07:00
Marc Laval
52bf0def4e
chore(test): improve test.unit.cjs task
...
Closes #998
2015-03-18 21:51:57 -07:00
Jacob MacDonald
a963ae48e5
feat(benchmarks): add polymer js 0.8-preview benchmark
...
Limitations because of preview status (see #960 ):
- does not yet use ShadowDOM
- does not use a builtin conditional like `if`
- uses a temporary bower repository
Closes #943
2015-03-13 20:48:03 -07:00
vsavkin
75ecaf02b9
chore: upgrade guinness to remove a workaround in testlib
2015-03-13 18:19:10 -07:00
Rado Kirov
ce29862e2f
fix(dart_libs): add _dart suffix only for reserved lib names.
...
Closes #871
2015-03-12 15:14:39 -07:00
Rado Kirov
dd3e6271c2
chore(services): rename services.
...
Closes #711
2015-03-11 18:30:37 -07:00
Marc Laval
1d4ff9bcdc
feat(compiler): parse5 DOM adapter
...
Closes #841
2015-03-11 14:42:54 +01:00
Tobias Bosch
9c9769e3dd
fix(build): copy files that are included in html files to the same folder
...
This is e.g. needed to allow Dart benchmarks to be served via `pub`
2015-03-02 16:34:32 -08:00
Tobias Bosch
e490861ba2
fix(docs): make them run again and integrate into ci
2015-02-26 15:38:12 -08:00
Tobias Bosch
3f25f5a356
feat(build): add general copy/multicopy method
2015-02-24 16:53:44 -08:00
Yegor Jbanov
d1f03e509b
fix(benchpress): benchpress fixes and a smoke test for Dart
2015-02-23 10:50:51 -08:00
Tobias Bosch
7aa031b3d3
feat(bench press): use chrome tracing protocol and initial iOS support
2015-02-20 13:20:17 -08:00
Marc Laval
85211f0a6b
fix(core): workaround for circular dependencies in nodejs
...
Closes #716
2015-02-19 13:42:27 -08:00
Kevin Moore
fb5b168b19
chore: Remove unused imports and enable checks for unused imports as part of build
2015-02-18 21:06:30 -08:00
Tobias Bosch
cd90038950
fix(types): Add StringMap type
2015-02-18 09:53:27 -08:00
Tobias Bosch
674848648a
feat(facade): add support for `Date`
...
Also refactors the dart transpilar to expose
the type mappings for future changes.
2015-02-17 16:02:46 -08:00
Tobias Bosch
f6284f2a55
feat(benchpress): rewritten implementation
...
Limitations:
- cloud reporter is not yet supported any more
2015-02-16 11:43:27 -08:00
Tobias Bosch
44845839a6
fix(transpiler): support arrow functions with complex body in named arguments
2015-02-16 10:48:44 -08:00