Commit Graph

236 Commits

Author SHA1 Message Date
paulberry@google.com 77a6daa667 Add error condition INVALID_OVERLAY_CHANGE to analysis server.
R=danrubel@google.com

Review URL: https://codereview.chromium.org//545323002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39925 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-05 19:23:55 +00:00
scheglov@google.com 3661df5b0e Include additional information into RenameFeedback.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//545943003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39918 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-05 16:39:15 +00:00
scheglov@google.com 67cd1ab0e2 Decode RefactoringFeedback automatically.
The implementation is pretty ugly though.

1. I have to add Response into ResponseDecoder.
2. I have to hack EditGetRefactoringParams.fromRequest generation to feel the "id to kind" map.

  It would be easier if we decided to return 'kind' in responses.

R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org//541823004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39887 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-04 21:13:24 +00:00
scheglov@google.com 3ddecb8c64 Use typed RefactoringOptions in the Dart version of the protocol.
R=jwren@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org//537733002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39875 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-04 16:21:08 +00:00
paulberry@google.com 9279b9fe81 Fix error handling in analysis.getError.
Analysis.getError now has the following behaviors:

- If the file in question does not exist, or is not subject to
  analysis, a new error called GET_ERRORS_INVALID_FILE is generated.

- If the server's internal state (the set of active analysis contexts)
  changes while the query is in process, the query is transparently
  restarted; the client no longer receives a GET_ERRORS_ERROR error.

R=scheglov@google.com

Review URL: https://codereview.chromium.org//532403002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39871 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-04 14:34:43 +00:00
paulberry@google.com e3a2f54db8 Clarify some of the analysis server errors.
The errors GET_ERRORS_ERROR, UNANLYZED_PRIORITY_FILES, and
UNSUPPORTED_FEATURE exist for legacy reasons and should be removed
soon.  The error SERVER_ALREADY_STARTED exists for future expansion
and is not yet used.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//535333003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39832 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-03 20:36:29 +00:00
paulberry@google.com 3df72ead31 Document all the cases where HoverInformation fields can be absent.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//528303002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39807 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-03 14:52:11 +00:00
paulberry@google.com 703df31e12 Rename ExecutableFile.offset to ExecutableFile.kind and fix documentation.
R=scheglov@google.com

Review URL: https://codereview.chromium.org//528053002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39774 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-02 20:13:03 +00:00
paulberry@google.com 33b4cc89c0 Make findElementReferences' "id" result optional.
R=jwren@google.com

Review URL: https://codereview.chromium.org//529123002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39773 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-02 20:10:59 +00:00
paulberry@google.com d092a96981 Clarify type names in analysis server API.
The following types are renamed:

- ErrorFixes -> AnalysisErrorFixes
- ErrorSeverity -> AnalysisErrorSeverity
- ErrorType -> AnalysisErrorType

This clarifies that the types have to do with the
errors/warnings/hints generated by the analysis of user code, as
opposed to analysis server protocol errors.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//531153002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39770 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-02 19:54:03 +00:00
paulberry@google.com 766c549ec7 Fix references to non-existent requests in analysis server API doc.
R=jwren@google.com

Review URL: https://codereview.chromium.org//527773004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39761 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-02 18:23:34 +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
scheglov@google.com d8b6298631 Drop the 'occurrences' field from the EXTRACT_METHOD refactoring feedback.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//533743002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39756 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-02 16:59:23 +00:00
paulberry@google.com 3123e48d29 In the analysis server API, change RequestError.code to an enum.
Some of the error codes that were previously defined are no longer
used, so those have been removed.  The enum reflects the set of errors
that are currently in use.

R=brianwilkerson@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org//513853002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39689 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-29 07:30:43 +00:00
paulberry@google.com f556420f97 Rename some bools in the analysis server API.
R=brianwilkerson@google.com, jwren@google.com

Review URL: https://codereview.chromium.org//508203002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39604 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-27 16:39:49 +00:00
scheglov@google.com 71d70c2de3 Rename 'getRefactoring.return.status' to 'problems'.
It is a list, and we name lists with plurals.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//495273002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39495 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-22 14:47:30 +00:00
scheglov@google.com 436a6b725b Make RefactoringProblem.location optional.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//496113002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39476 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-21 21:44:08 +00:00
scheglov@google.com 47b813e4ec Rename 'kindId' to 'kind' in 'edit.getRefactoring'.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//473763003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39474 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-21 20:57:14 +00:00
paulberry@google.com 721b435ba6 Add SearchResultKind.UNKNOWN to the analysis server API.
This resolves an inconsistency between the spec and the analysis
server behavior: the server returns a SearchResultKind of UNKNOWN if
the MatchKind from the analysis engine is one of the following types:

- ANGULAR_REFERENCE
- ANGULAR_CLOSING_TAG_REFERENCE

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//488103003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39411 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-20 15:32:39 +00:00
paulberry@google.com 344ff2c03b Make search.findElementReferences.result.element field optional.
This resolves an inconsistency between the spec and the analysis
server behavior: the server doesn't populete the "element" field if no
element could be found.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//484313002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39388 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-19 21:56:29 +00:00
paulberry@google.com 570b2f115e Change analysis.updateOptions to use generated classes.
Note that there is a small change in behavior: unrecognized options
are now silently ignored; they no longer generate an error.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//492483002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39380 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-19 19:57:43 +00:00
paulberry@google.com 64b53a4b5c Code generate Dart classes representing the analysis server API.
These classes support:

- Conversion to JSON
- Conversion from JSON, with error handling via the Request object.
- operator== and hashCode

In addition, convenience functions are generated which extract and
convert the variant contents of a Request, Response, Notification,
EditGetRefactoringResult, or EditGetRefactoringParams once the type is
known.

The generated code is not yet used; it will be used by future CL's.

R=brianwilkerson@google.com, danrubel@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org//479043002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39361 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-18 23:44:05 +00:00
brianwilkerson@google.com 54edbcc686 Support potential edits
R=paulberry@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org//472373002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39309 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-15 18:51:16 +00:00
paulberry@google.com 4ab9bde919 Add an integration test for analysis.overrides.
Also remove the note from the API documentation saying that
analysis.overrides only works for overrides of a superclass.
Interface overrides work too.

R=scheglov@google.com

Review URL: https://codereview.chromium.org//476163002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39302 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-15 16:56:45 +00:00
danrubel@google.com fa2f2ec46d add keyword suggestions
BUG=
R=brianwilkerson@google.com, paulberry@google.com

Review URL: https://codereview.chromium.org//461063002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39284 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-15 03:37:01 +00:00
paulberry@google.com c38a23704c Write an integration test for analysis.navigation notification.
Also, add the missing ElementKind "PARAMETER", and sort the
ElementKinds.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//468233003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39267 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-14 21:06:50 +00:00
scheglov@google.com 8bbd86fd11 Proposal for RefactoringMethodParameter.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org//470723003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39253 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-14 16:46:55 +00:00
paulberry@google.com 17a5250955 Document the fact that client must filter results from completion.results.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//474583002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39220 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-13 20:36:55 +00:00
paulberry@google.com 96d5bd1bf0 Add union types to the analysis server API spec.
R=brianwilkerson@google.com, jwren@google.com

Review URL: https://codereview.chromium.org//469673002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39208 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-13 17:38:11 +00:00
brianwilkerson@google.com 7ab0a914ba Improve spec style and minor changes
R=paulberry@google.com

Review URL: https://codereview.chromium.org//461283002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39199 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-13 14:46:56 +00:00
paulberry@google.com 153e73e155 Add an integration test for analysis.highlights.
Also fix sort order in the API definition of HighlightRegionType.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//463643002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39152 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-12 18:16:37 +00:00
paulberry@google.com 1a773207c5 Integration test search.getTypeHierarchy and make some minor fixes.
R=brianwilkerson@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org//456613004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39045 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-08 19:39:50 +00:00
paulberry@google.com 320cbbf865 Rework "analysis.updateContent" analysis server request.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//449213002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39034 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-08 13:15:26 +00:00
paulberry@google.com b855a781d6 Remove RefactoringId from the analysis server API.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//446113002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38954 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-06 21:07:59 +00:00
paulberry@google.com 5353760386 Change the type of Error.code from int to String.
R=scheglov@google.com

Review URL: https://codereview.chromium.org//446983002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38940 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-06 18:44:13 +00:00
paulberry@google.com 0f559b00b0 Add analysis server API specification and related tools.
The source for the API specification is in
pkg/analysis_server/spec/spec_input.html.  This file uses custom HTML
elements to declare the machine-readable parts of the specification.

The script pkg/analysis_server/spec/generate_files processes that file
and creates two output files:

- pkg/analysis_server/spec/api.html, the human-readable analysis
  server spec.

- pkg/analysis_server/test/integration/protocol_matchers.dart, which
  is used by integration tests to check the data returned by the
  analysis server.

R=brianwilkerson@google.com, jwren@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org//443873006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38937 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-06 18:34:21 +00:00