This CL begins removing gyp from Dart's tree.
Removing gyp will go in three stages:
1. Remove unused .gyp and .gypi files.
2. Translate *_sources.gypi files to *_sources.gni files
3. Remove //third_party/gyp from DEPS
This CL is stage 1.
R=asiva@google.com
Review-Url: https://codereview.chromium.org/2992593002 .
This makes doing an SDK build in the Fuchsia tree easier.
The previous attempt at this change failed in gyp builds targeting xcode.
They failed because input lists for actions of the same target (e.g. the
actions for dartanalyzer) are merged and de-duped when the lists contain
relative paths, but merged and *not* de-duped when the lists contain
absolute paths. gyp rejects xcode files that it generated itself
when they contain duplicate entries.
This CL works around that bug, by using absolute paths in the GN build
and keeping relative paths in the gyp build.
R=rmacnak@google.com
Review-Url: https://codereview.chromium.org/2567213002 .
big global change, so let me explain in more detail. This refactoring CL does
the following:
- moves all the dart code for isolates in a common library (lib/isolate)
- changes frog to understand 'dart:isolate' imoprts by loading the code from the
location above.
- changes the vm to undernstand 'dart:isolate' imports by creating a separate
library that is part of the bootstrap. This follows the same code-structure
that Todd suggested in his CL introducing the mirror library
- changes dartc to use the shared isolate library as the source of truth for
type checking. I left around some of the internal js code in dartc so that the
backend continues to work for apps that don't use isolates.
- changes all tests that use isolates to import the library explicitly (this is a large bulk of the files in this CL)
- changes test status for tests we can't fix in this repo (e.g. co19)
- splits the isolate library code to make it possible to preserve some tests
without exposing internal types (e.g. tests about
serialization/deserialization)
- changes the create_sdk script to copy the isolate library to the sdk
- includes the isolate library in dartdoc
I'll wait for at least one lgtm from each area (dartc, vm, frog, sdk)
There is one important pending thing this CL doesn't do:
- update test_runner.dart: This should be updated next time we upload the new
binaries to tool/testing/bin
- dartium specific changes: Vijay, is there anything I need to do for dartium?
Review URL: https://chromiumcodereview.appspot.com//9422019
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4647 260f80e4-7a28-3924-810f-c04153c831b5
With this change, dartdoc does a more comprehensive job of letting users
navigate the web of types. For each class, this will show its chain of
superclasses, interfaces it implements, and its immediate subclasses.
For interfaces, it shows superinterfaces, subinterfaces, implementing classes,
and a default class if it has one.
Review URL: https://chromiumcodereview.appspot.com//9271020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3515 260f80e4-7a28-3924-810f-c04153c831b5
Right now, the generated docs are pretty huge (100MB for all of the main libs). This is mainly
because each generated HTML page includes full navigation for each type in the containing
library. For stuff like dart:html, that's tons of HTML. Even after compression, the docs are
9.2MB. Also, they take a long time to generate (30s on my laptop).
This patch adds a mode you can use called "live-nav" (and makes it the default). With that
mode, pages do not include navigation. Instead, we generate a single nav.json file with the
navigation data. Client-side Dart code does an XHR for that and then renders the navigation
on the fly.
This gets the generated docs down to 13.3MB (2MB after compression) and gets doc generation
up to 6.3s for everything.
The two downsides are:
1. There's a visible flash on page load when it renders the nav since it's asynchronous.
2. You can't browse docs locally just using file://. To be able to XHR the nav.json, you
either need to enable file access in your browser or run a local server.
Review URL: https://chromiumcodereview.appspot.com//9256002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3445 260f80e4-7a28-3924-810f-c04153c831b5
This moves markdown into two places:
- The one under samples/ is intended to be a "real" markdown parser.
Eventually, it will probably live as a third-party library outside of our
standard lib but still easily accessible.
- The one inside dartdoc will change to become the parser used to parse
Gilad's forthcoming dartdoc comment syntax.
Review URL: http://codereview.chromium.org//8953042
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2606 260f80e4-7a28-3924-810f-c04153c831b5
This entails adding callbacks to dartdoc for injecting additional
comments, as well as adding somewhat deeper support for hashing and
equality testing of Frog objects.
The next step is to inject the annotations into the HTML and DOM library source itself.
Review URL: http://codereview.chromium.org//8771054
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2199 260f80e4-7a28-3924-810f-c04153c831b5
- Remove "Library" from libraries in index.
- Use different icon for exception classes in nav.
- Group classes, interfaces, and exceptions together on lib page.
- Don't show "Class" or "Interface" before types on lib pages.
- Show type bounds on generic classes.
- Don't show private constructors.
- Sort named constructors.
- Document function-typed parameters correctly. (See Collection<T>)
- Document named optional parameters and default values.
- Document type bounds in class definitions.
- Show raw types without type arguments.
- In type annotations for instantiated generic types, link the type
argument appropriately (i.e. List<String> will link String>).
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2159 260f80e4-7a28-3924-810f-c04153c831b5