1
0
Fork 0
Commit Graph

315 Commits (fb48c70ce2d49c88f3857f14298e38edc301d9bd)

Author SHA1 Message Date
Felix Becker d080c161a9 Don't crash if indexing fails 2017-01-13 12:06:58 -08:00
Felix Becker 106aa24b5d Implement global references protocol extension (#236) 2017-01-10 17:08:52 -08:00
Felix Becker 49245fd4d3 Allow overriding (#229)
* Add missing documentLoader property

* Make PhpDocumentLoader->contentRetriever public
2017-01-04 19:18:14 -08:00
Felix Becker 662143abad Fix wrong function call in DefinitionResolver 2016-12-24 16:35:20 +01:00
Kaloyan Raev de0dd32a67 Add used by Eclipse IDE (LSP4E-PHP) (#224) 2016-12-23 11:10:44 +01:00
Felix Becker b93d4f33cb Fix stubs location 2016-12-20 13:53:15 +01:00
Felix Becker 710d2a7ff7 Fix autoloading in ComposerScripts 2016-12-20 13:44:01 +01:00
Felix Becker 2005518dfe Support find-all-references for namespaces (#221) 2016-12-17 03:46:08 +01:00
Felix Becker 83618fee2e Avoid multiple references with function calls (#220) 2016-12-16 23:42:47 +01:00
Felix Becker 2242a35678 Reset definitions and references on content update (#219) 2016-12-16 23:33:55 +01:00
Felix Becker d03db024c1 Add Eclipse Che to "Used By" section 2016-12-16 13:00:11 +01:00
Felix Becker a4a13e6528 Add support for inherited members (#218)
in completion, definition, references, hover etc
2016-12-16 01:40:17 +01:00
Felix Becker cc9d5e987b Fix wrong class name 2016-12-15 18:01:44 +01:00
Felix Becker cd116a252b Update php-parser 2016-12-13 10:07:11 +01:00
Felix Becker 0b61951a9c Support hover for definitions
#201
2016-12-13 03:18:07 +01:00
Felix Becker 96ea8608d7 Support getting references from a reference
Closes #201
2016-12-13 02:53:01 +01:00
Felix Becker b8a113ddd0 Correct reference collection for New_ nodes
Closes #202
2016-12-13 02:40:51 +01:00
Felix Becker d90a88e625 Add missing property declaration 2016-12-13 02:13:57 +01:00
Felix Becker d7fc9e0425 Index twice to collect dynamic references (#206) 2016-12-13 02:11:29 +01:00
Felix Becker a7d77d844e Add Index classes and stubs (#214) 2016-12-13 01:51:02 +01:00
Felix Becker b9f9871156 Files finder (#209) 2016-12-08 02:33:48 +01:00
Felix Becker ebd1cc6133 Refactor content retrieval (#208) 2016-12-08 01:51:32 +01:00
Michal Niewrzal db6f4f7e5d Don't filter properties on typed prefix (#207) 2016-12-07 21:17:55 +01:00
Felix Becker 10fb3c92e0 Completion (#165)
* Add support for method/property completion

* Move completion fixtures into directory

* Add support for variable suggestions

Refactor logic into CompletionProvider class

* Allow getTypeFromNode() to take Variable nodes

* Use property and constant values

* Fix using @var tag for variables

* Improve completion

* classes
* variables with prefix filtering

* Make FQNs more distinct

* use -> for instance methods/properties
* use ::$ for static properties

* Add tests for static access

* Properly filter completion on empty property

* Fix existing tests

* Add support for static access without prefix

* Fix testFullyQualifiedClass

* Add missing fixtures

* Correct file number in init test

* Only insert backslash if not typed yet

* Completion for keywords and bug fixes

* Correct variable insertion

* Support completion for namespaces

* Use CompletionList

* Always set isIncomplete to true

* Update PHPCodeSniffer

* Remove unused method

* And the call

* Handle case where FQN could not be resolved
2016-11-30 22:23:51 +01:00
Felix Becker f56b14438b Shutdown when the socket is closed (#191) 2016-11-30 21:10:05 +01:00
Felix Becker 5077b1a87a Add Dockerfile (#185)
* Add Dockerfile

* Add .dockerignore

* Publish to docker hub on every release
2016-11-29 21:08:54 +01:00
Felix Becker 48e0167060 Support to run as TCP server & fork a child process for every connection (#183) 2016-11-29 19:32:17 +01:00
Michal Niewrzal ea92b224cd Symbols throws error for empty php file (#187)
Closes #186
2016-11-29 13:10:02 +01:00
Michal Niewrzal e8ab8aa2b8 Make processId optional for initialization (#178) 2016-11-23 18:38:57 +01:00
Felix Becker 429114ff97 Handle group use declarations in DocBlockParser (#166) 2016-11-19 13:04:13 +01:00
Felix Becker 5213940064 Don't encode spaces to + 2016-11-19 12:25:52 +01:00
Felix Becker 8f6ee8dd02 Handle null return from getClosestNode() 2016-11-19 12:03:43 +01:00
Felix Becker 00bc8537a6 Support compound types when resolving FQNs 2016-11-19 11:45:25 +01:00
Felix Becker fb84741d55 Add missing property 2016-11-19 06:37:07 +01:00
Felix Becker c2ae7cd022 FIx crashes when tag doesn't have a type 2016-11-19 06:36:57 +01:00
Felix Becker 33211c68ca Resolve expressions recursively (#155)
* Add Definition class
* Add recursive DefinitionResolver
* Cache hover
2016-11-18 15:22:24 +01:00
Felix Becker c19aedcef2 Document that vendor errors are ignored 2016-11-18 15:01:28 +01:00
Felix Becker e254e66878 Improve installation guide 2016-11-18 14:59:08 +01:00
Felix Becker 5a8d64c18c Note that XDebug impacts performance 2016-11-18 14:57:24 +01:00
Felix Becker 4b014154ac Document support for the files extension 2016-11-18 14:56:22 +01:00
Michal Niewrzal 50490d51ea Fix formatting makes LS non-responsive (#153) 2016-11-18 14:25:05 +01:00
Felix Becker 500ae5dc92 Use custom error handler instead of Symfony (#162) 2016-11-18 14:15:08 +01:00
Felix Becker 12df6a7dd6 Add size limit back (#161) 2016-11-18 13:24:26 +01:00
Felix Becker 32b01afa90 Index files serially again (#157) 2016-11-17 22:20:37 +01:00
Felix Becker 6056f39d01 Fix LanguageServerTest failure 2016-11-17 22:08:05 +01:00
Felix Becker 601c9ad997 Update PHPParser to 3.0.0beta2 (#151) 2016-11-16 16:58:32 +01:00
Felix Becker 642425dede Ignore errors from dependencies (#147) 2016-11-14 20:00:10 +01:00
Felix Becker 03bbf5f4ba Enable LS to operate without accessing the file system (#136)
This PR decouples the LS from direct file system access by implementing the proposals for workspace/files and textDocument/content under workspace/xfiles and textDocument/xcontent. The requests are only used when the client expressed support for them through ClientCapabilities, otherwise direct FS access is used.
This turns document content retrieval and recursive file search into async operations.
In turn, all server handlers can now operate async by returning a promise.
2016-11-14 10:25:44 +01:00
Felix Becker 25f300c157 Add test for indexing 2016-11-07 11:52:24 +01:00
Felix Becker 47472252a7 Encode spaces in paths to %20 instead of + (#140) 2016-11-07 10:24:49 +01:00