Brian Wilkerson
089038b085
Move index closer to the plugin API
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1156493004
2015-06-01 08:25:40 -07:00
Brian Wilkerson
ad52c9eab9
Add support for specifying files needing analysis
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1152013002
2015-05-21 14:34:04 -07:00
brianwilkerson@google.com
ac3613e2bb
Re-apply change to move to plugin package
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1094083003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45408 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-24 18:54:24 +00:00
brianwilkerson@google.com
3d536efcfe
Revert breaking change
...
Review URL: https://codereview.chromium.org//1101213002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45384 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-23 22:12:20 +00:00
brianwilkerson@google.com
24c853446a
Convert analyzer and analysis_server to use the plugin package
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1063153004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45382 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-23 20:32:35 +00:00
paulberry@google.com
7e53bd2b1f
Avoid redundant calls to "pub list" when multiple dependencies change.
...
BUG=dartbug.com/22574
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//1089453002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45170 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-15 16:02:18 +00:00
brianwilkerson@google.com
6150881e01
Add plugin info to the status page
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1020813002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@44620 260f80e4-7a28-3924-810f-c04153c831b5
2015-03-20 23:23:13 +00:00
danrubel@google.com
a115d9dd7c
remove pub list caching
...
BUG=
R=jwren@google.com
Review URL: https://codereview.chromium.org//998993005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@44544 260f80e4-7a28-3924-810f-c04153c831b5
2015-03-17 22:05:21 +00:00
brianwilkerson@google.com
cd58e290c4
Reformat
...
R=paulberry@google.com
Review URL: https://codereview.chromium.org//969113002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@44151 260f80e4-7a28-3924-810f-c04153c831b5
2015-03-02 22:43:12 +00:00
danrubel@google.com
d91099d6cb
fix invocation completion with trailing stmt
...
BUG=dartbug.com/22365
R=scheglov@google.com
Review URL: https://codereview.chromium.org//965753003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@44100 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-27 18:42:41 +00:00
danrubel@google.com
6a90488fc8
cache pub list results
...
BUG=
R=paulberry@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//941883002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@44062 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-26 17:24:08 +00:00
scheglov@google.com
55a3255070
Return RequestErrorCode.NO_INDEX_GENERATED for search/refactoring requests.
...
Also remove passing a SearchEngine instance into Quick assists/fixes - they don't use it.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//923103004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43819 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-17 20:01:45 +00:00
jwren@google.com
252c19c920
Addition of the new flag "file-read-mode" into the analysis server to fix the offset bug with IntelliJs integration.
...
R=brianwilkerson@google.com , paulberry@google.com
Review URL: https://codereview.chromium.org//857283003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43028 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-20 21:48:00 +00:00
brianwilkerson@google.com
11c0e607a0
Make domains plugable
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//846723002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42756 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-09 22:15:20 +00:00
brianwilkerson@google.com
44b69647a3
Rework instrumentation API
...
R=danrubel@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//801543002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42321 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-12 16:00:23 +00:00
brianwilkerson@google.com
0a8dc970d2
Hooks for instrumentation
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//787763004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42218 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-09 20:14:42 +00:00
scheglov@google.com
283b78e260
Add --enable-incremental-resolution option.
...
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org//756193002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41971 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-25 20:53:10 +00:00
scheglov@google.com
b8da9bc651
Format and sort analyzer and analysis_server packages.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//725143004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41792 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-17 22:23:53 +00:00
paulberry@google.com
5b45f8e762
Move PubPackageMapProvider to its own file.
...
This will allow clients of the AnalysisServer package to provide their
own PackageMapProvider without bringing in a dependency on dart:io.
R=brianwilkerson@google.com , rpaquay@chromium.org
Review URL: https://codereview.chromium.org//599133002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40638 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-24 18:09:08 +00:00
jwren@google.com
944174f36a
Move package_map_provider.dart from the server to the analyzer package to be used by the command line analyzer.
...
R=brianwilkerson@google.com , paulberry@google.com
Review URL: https://codereview.chromium.org//560553002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40051 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-09 20:36:35 +00:00
brianwilkerson@google.com
44c2892f6f
Initial support for execution domain
...
R=paulberry@google.com
Review URL: https://codereview.chromium.org//544273003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39974 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-08 16:21:16 +00:00
scheglov@google.com
5033317a13
Split channels library.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//544693002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39881 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-04 17:53:16 +00:00
paulberry@google.com
a239950909
Rename Error to RequestError in analysis server API.
...
Also, use the code-generated RequestError class in place of the old
handwritten RequestError class.
R=jwren@google.com
Review URL: https://codereview.chromium.org//530583004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39760 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-02 18:20:47 +00:00
paulberry@google.com
caf0592503
Make more use of generated code in analysis server.
...
The following generated classes are now used:
- Element
- Location
- Occurrences
- Outline
- OverriddenMember
- Override
- Position
- SearchResult
- SearchResultKind
- SourceFileEdit
- TypeHierarchyItem
Generated code is used to produce the responses to these requests:
- completion.getSuggestions
- search.findElementReferences
- search.findMemberDeclarations
- search.findMemberReferences
- search.findTopLevelDeclarations
- search.getTypeHierarchy
Generated code is used to handle these notifications in unit testing:
- analysis.navigation
- analysis.occurrences
- analysis.outline
- analysis.overrides
- search.results
In addition, we no longer bother to test the JSON conversion code on
AnalysisError, since it is code generated.
R=scheglov@google.com
Review URL: https://codereview.chromium.org//479683005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39470 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-21 20:04:06 +00:00
paulberry@google.com
7226309842
Import analysis_services.dart into analysis_server.dart.
...
Having two separate packages doesn't really have any benefit, and has
the downside of forcing us to carefully avoid circular dependencies
between the two. It makes more sense to just combine them.
This is largely a mechanical change consisting of the following renames:
1. pkg/analysis_services/lib/src/* -> pkg/analysis_server/lib/src/services/*
2. pkg/analysis_services/lib/* -> pkg/analysis_server/lib/src/services/*
3. pkg/analysis_services/test/* -> pkg/analysis_server/test/services/*
There were 4 instances where 1 and 2 created a collision:
.../services/correction/assist.dart, .../services/correction/fix.dart,
.../services/refactoring/refactoring.dart, and
.../services/search/search_engine_internal.dart. To fix the
collision, the files coming from pkg/analysis_services/lib/src were
renamed to "..._internal.dart".
In addition, pkg/analysis_services/test/test_all.dart was modified to
call pkg/analysis_services/test/services/test_all.dart.
R=brianwilkerson@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//484733003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39349 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-18 20:17:49 +00:00
scheglov@google.com
08a248283e
Issue 20240. Use a FileManager that manages its own temporary directory.
...
So, we can have more than one index and server running.
And we know when it is time to delete or recreate this temporary directory.
R=paulberry@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=20240
Review URL: https://codereview.chromium.org//426773002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38652 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-28 22:13:58 +00:00
scheglov@google.com
4a722c5958
Implementation of the 'edit.getFixes' API in server.
...
R=paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org//402333006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38473 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-22 20:45:51 +00:00
paulberry@google.com
9f49af72fc
As a temporary measure, allow SDK to be specified on analysis server cmd line.
...
Once the 'analysis.updateSdks' request is functional, this should be
unnecessary. But for now, allow the default SDK to be set via the
command line so that we don't block development of editor plugins.
R=scheglov@google.com
Review URL: https://codereview.chromium.org//394923004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38443 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-21 21:50:59 +00:00
scheglov@google.com
acd4145f62
Initial implementation for 'search.findElementReferences'.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//392693002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38201 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-14 17:45:28 +00:00
scheglov@google.com
0597e61ba3
Move index/search to services.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//375693002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38045 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-07 22:24:59 +00:00
scheglov@google.com
9e33b85c31
Move file_system libraries into 'analyzer'.
...
I still end up including memory FS into 'analyzer' because tests for ResourceUriResolver use it.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//372763003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38034 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-07 18:57:42 +00:00
scheglov@google.com
1f45100688
Move Index and IndexStore implementations into Engine.
...
Also move most of the related tests.
LocalIndex test is commented out, because relies on the infrastucture existing only in Server - virtual file system, mocks.
We need to move it into Engine or extract into a separate package.
This CL also removes Dart implementation of BTree.
We now use a different approach to implementing the index.
Bots are red after the previous CL, I hope that this one will fix at least some redness.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//365193004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37993 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-03 21:30:25 +00:00
scheglov@google.com
01c2fbefb1
Index Dart/HTML units after analysis.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//346963006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37707 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-25 21:14:30 +00:00
paulberry@google.com
e9fa53425c
Use "pub list-package-dirs" to resolve package URIs in analysis server.
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//341893010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37552 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-20 14:42:01 +00:00
brianwilkerson@google.com
58ee598e04
Adjust server for API changes
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//337943002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37368 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-16 18:41:04 +00:00
paulberry@google.com
b703deb077
Add a boolean which causes AnalysisServer to rethrow exceptions.
...
The boolean defaults to true to ensure that any unhandled analysis
exceptions which occur during unit tests are reported as unit test
failures. When the full analysis server is run normally it is set to false
so that exceptions are simply logged.
R=brianwilkerson@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//302323002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36895 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-02 19:57:41 +00:00
scheglov@google.com
304243bc5b
Add ServerOperation and queue.
...
Schedule operations to perform analysis.
Moving notifications into operations to be done in the next CL.
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org//308003009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36890 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-02 18:31:49 +00:00
scheglov@google.com
764c6b112c
Partial implementation of the 'setAnalysisRoots' API.
...
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org//300023004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36702 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-27 19:01:14 +00:00
scheglov@google.com
cb0999996d
API and stubs for the 'analysis' domain.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//302503002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36611 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-25 15:22:36 +00:00
scheglov@google.com
170020b4f8
Use type annotations everywhere in analysis_server/lib.
...
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org//300643002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36610 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-24 17:46:27 +00:00
paulberry@google.com
19572ac352
Use AnalysisServer.running only to track whether server has been shut down.
...
Previously, AnalysisServer.run() and AnalysisServer.performTask() also
tried to use this variable to track whether there was a pending call
to performTask() on the event queue. The resulting confusion
prevented analysis from ever running.
It turns out that we don't need to separately track whether there is a
pending call to performTask(), as long as we enforce the invariant
that there is a pending call to performTask() exactly when
contextWorkQueue is non-empty.
R=brianwilkerson@google.com , danrubel@google.com
Review URL: https://codereview.chromium.org//246603005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35323 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 18:35:58 +00:00
paulberry@google.com
93deb52cd6
Add a message for analysis server to indicate a successful connection.
...
This complements the "server already started" error introduced in
r35046. It's now easy for the client to detect whether a connection
to the server was successful--it simply connects and waits for the
initial message from the server. The message returned on a successful
connection is:
{"event":"server.connected"}
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//239213004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35108 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-16 15:11:35 +00:00
paulberry@google.com
33c7e78bb0
Split analysis server's HttpAnalysisServer into two classes.
...
Behaviours of the HttpAnalysisServer which are independent of the
WebSocket transport mechanism have been moved to a new class,
SocketServer, which will also be used when the transport mechanism is
stdio.
GetHander now holds a reference to the SocketServer rather than the
AnalysisServer, so that we don't need to go to extra effort to update
it when the AnalysisServer is created.
R=brianwilkerson@google.com , jwren@google.com
Review URL: https://codereview.chromium.org//237643003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35061 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-15 15:41:09 +00:00