47 Commits

Author SHA1 Message Date
Wesley Wigham
d1a2ae5e12 Factor switch staement into a map and create a method to add members to it 2015-06-19 12:39:51 -07:00
Mohamed Hegazy
7361d68d25 Merge pull request #3542 from weswigham/jake-lssl
Add build target for packaging tsserver as a library
2015-06-17 23:54:04 -07:00
Wesley Wigham
7390fe0eab Feedback form pr #3513 2015-06-17 13:21:43 -07:00
Arthur Ozga
1d5dcf0d0c changes that are non-breaking 2015-06-16 15:39:34 -07:00
Wesley Wigham
ab1512fb13 Export server & session without any node specifics 2015-06-15 13:37:18 -07:00
Mohamed Hegazy
224e7630ea use namespaces instead of modules in the codebase 2015-06-12 09:01:48 -07:00
Zhengbo Li
70675162dc Add tests for projectinfo command 2015-06-01 17:45:28 -07:00
Zhengbo Li
321cfab2d7 CR feedback 2015-05-29 18:03:41 -07:00
Zhengbo Li
c597bd63fc Add APIs to provide project info for a given file
Return the path of the config file and the file name list of the project
(optionally). This is helpful in differentiate the build command
behavior for loose files and configured projects in sublime.
2015-05-29 17:20:41 -07:00
Mohamed Hegazy
7fc6142def Merge branch 'master' into getTypeDefinitionAtPosition
Conflicts:
	src/services/services.ts
2015-05-04 10:02:37 -07:00
Zhengbo Li
d580063083 Fix host formatting configuration issues 2015-05-03 15:31:07 -07:00
Mohamed Hegazy
f073981474 Update command name 2015-05-01 15:57:11 -07:00
Mohamed Hegazy
b6905aff0c Add getTypeDefinitionAtPosition to tsserver 2015-04-29 22:55:05 -07:00
Dirk Bäumer
62b15de666 Merge pull request #2687 from dbaeumer/feature/fix2507
fixes #2507 - bad formatting for formatonkey if convertTabsToSpaces === false
2015-04-19 21:43:51 +02:00
steveluc
b35fea8e9e Eliminate HUGE (>10X) performance regression on session.ts dispatch that
was causing major lag for Sublime plug-in.  Backs out destructuring
dispatch change in session.ts
2015-04-13 19:59:02 -07:00
Daniel Rosenwasser
180f17d088 Destructure arguments at dispatched calls. 2015-04-08 17:02:42 -07:00
Daniel Rosenwasser
d8d494d4da *Actually dispatched* on the logic. 2015-04-08 00:41:12 -07:00
Daniel Rosenwasser
93bb224545 Actually implemented the session-side logic. 2015-04-08 00:35:34 -07:00
Daniel Rosenwasser
5b6c65ffe0 Added support for getOccurrences to the server. 2015-04-07 23:31:09 -07:00
steveluc
74e6b6eccc Add an exit message for the server. 2015-04-02 00:13:06 -07:00
Dirk Baeumer
c123208784 fixes #2507 - bad formatting for formatonkey if convertTabsToSpaces === false 2015-03-26 15:33:15 +01:00
Dirk Baeumer
631a9d80be Merge pull request #2489 from dbaeumer-feature/formatOptions 2015-03-26 11:23:14 +01:00
Daniel Rosenwasser
e33b24d3d0 Merge pull request #2480 from dbaeumer/feature/signatureHelp
Add signature help to Typescript server
2015-03-25 15:07:24 -07:00
Dirk Baeumer
c66571b273 Integrated pull request feedback 2015-03-25 12:31:59 +01:00
Dirk Baeumer
bda471f110 Add SignatureHelp support to Typescript server 2015-03-24 15:44:01 +01:00
steveluc
7b824bac41 Make completion prefix matching case insensitive. 2015-03-23 17:25:45 -07:00
steveluc
8798235c68 Added support in the server for tsconfig.json. When a host opens a
file F, the server will check whether F is configured by a
tsconfig.json file.  If so, the project specified by the tsconfig.json
file becomes the LS context for F.
2015-03-20 21:56:20 -07:00
steveluc
34e612c9fc Add handling of hard tabs in server buffers. Change message protocol to
pass locations as line/offset pairs instead of line/column pairs, where
offset is a 1-based character offset from the beginning of the line.
Offset will be equal to column if the line contains no tabs.  If the
line contains tabs, offset will be less than or equal to column,
depending on how many tabs are before the offset.  Also added tab size
and indent size to file open message.
2015-03-17 22:58:12 -07:00
steveluc
e1d7389f3e Merge remote-tracking branch 'origin/master' into
serverConfigurationMessage.
2015-03-17 17:51:16 -07:00
steveluc
2c60cf96dd Add use of host-configured format options to additional code site. 2015-03-16 15:10:58 -07:00
steveluc
51c64b385c Added configuration message. Added logic to expand tabs to spaces using
host-configured tab size.
2015-03-16 14:47:46 -07:00
steveluc
04320e415e Renames and comments as requested by feedback. 2015-03-09 01:23:03 -07:00
steveluc
360e47880e Addressed comments on code style and organization. 2015-03-07 23:19:58 -08:00
steveluc
9a45160ab6 Changed TypeScript server logging to use an environment variable TSS_LOG
as follows.  If TSS_LOG is not set, no logging will occur.  If TSS_LOG
is set to any value, logging will occur as before this change (log file
will be in directory of tsserver.js with name .logPID where PID is the
process id of the server process; log will contain the pre-change
messages).  If TSS_LOG is set to a string that has the form "-file
fileName", the log file will be in the tsserver.js directory with name
'fileName'.  If TSS_LOG is set to a string that has the form "-level
levelName", then the level of logging will be set to 'levelName'.
Currently the two levels are 'normal' and 'verbose'.  The TSS_LOG string
can contain zero, one or both of its options as in "-file LOG -level
verbose".  At the verbose level, the server will log every request,
response and event, and will also give elapsed time for message processing.
2015-03-07 17:13:52 -08:00
steveluc
8bef6d7ebc Added additional cases for format on enter. These cases fix bugs in the
orginal format on enter (which wasn't distinguishing whether there was
existing whitespace to start some types of lines).
2015-03-07 15:44:21 -08:00
steveluc
fa504f6808 Update project structure after change. After each change a
timer is started.  If timer finishes before another change takes place,
project structure will be updated to reflect any changes in reference
comments or import statements.
2015-02-23 23:44:15 -08:00
steveluc
b0c522d0d0 Add missed file from addNavtoLimit branch. 2015-02-23 12:06:07 -08:00
steveluc
47d265b20b Changed no content action for completions from exception to error message. 2015-02-22 23:33:35 -08:00
steveluc
f9518b252b Added update of project structure on idle following change (if no
changes in last s seconds (where s is currently 1.5), then check project
structure to account for references that may have changed.  Turned this
off pending fix for getScriptFileNames returning only the root names.
Added event handler for deleted file, so that session can update error
messages upon deletion of a file from a project.
2015-02-22 23:27:45 -08:00
steveluc
f19619e22b Add maxResultCount optional field to NavtoRequestArgs. Change
session.ts to use this field.  Remove sort of nav items from getNavigateToItems in
sesion.ts because LS now does the sort.  Removed no content throw in
quick info as this happens frequently with Sublime (every cursor move
calls quick info, and quick info is only available on symbols).  Added
mechanism for other commands to avoid throwing and instead return a
specific error message, so that we don't make the log unreadable (as it
was with hundreds of quick info stack traces).
2015-02-22 00:44:14 -08:00
steveluc
d364f6110e Style fixes. 2015-02-19 12:56:53 -08:00
steveluc
4b590836e7 Split completions req/response pair into two messages "completions" and
"completionEntryDetails".   This mirrors the function of the LS API and
increases performance of completion in large projects.
2015-02-18 15:12:35 -08:00
steveluc
3868fb5a6b Removed deleteLen from change request; added endLine, endCol that mark
the end of the deleted Range (inclusive).  DeleteLen was not always
accurate because editors normalize \r\n to \n in some cases, affecting
the length of ranges.  In Diagnostic response items, changed len field
to end to address the same range length issue.  Flattened
MessageDiagnosticChains in diagnostic message text, since clients expect
string there.  Renamed ts.server.protocol to simply protocol in
session.ts and client.ts since module name prefix is clear.

Based on protocol feedback: Changed LineCol to Location.  Changed
CodeLocation interface name prefix to FileLocation.  Changed DiagEvent
to DiagnosticEvent.  Removed anonymous types.
2015-02-18 00:14:52 -08:00
steveluc
cadd57c10f Change rename response to return the rename info + nested location
information: one array of location information per file.  Add interface
definition for rename response body.
2015-02-17 02:02:59 -08:00
steveluc
d2712dd793 Removed file mapping compression technique due to brittleness of
approach.  As necessary, will substitute grouping or paging approaches.
2015-02-16 23:43:05 -08:00
Mohamed Hegazy
8a9ac8d338 Change ServerProtocol module to ts.server.protocol 2015-02-15 19:14:33 -08:00
Mohamed Hegazy
f5c1bfbca7 renmae protodef.d.ts to protocol.d.ts and protocol.ts to session.ts 2015-02-15 18:49:22 -08:00