Skip to content
This repository has been archived by the owner on Apr 14, 2022. It is now read-only.

Fix overload merge with Typeshed #277

Merged
merged 14 commits into from
Oct 18, 2018
Merged

Fix overload merge with Typeshed #277

merged 14 commits into from
Oct 18, 2018

Conversation

MikhailArkhipov
Copy link

Fixes #11

  • When merging definitions code should not stop as soon as the first result is available since better definition may be in the base.
  • When merging definitions code should be properly comparing overloads
  • Moved completion tests from LS to CompletionTests
  • Added tests for the Return type does not propagate to derived class #11: MethodFromBaseClass2X and MethodFromBaseClass3X.

Debug.WriteLine($"Completed {completions._expr ?? "(null)"} at {span}");
}

class TestCompletionHookProvider : ILanguageServerExtensionProvider {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's put extension apt tests in a separate class

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Few reasons why they are here:

  • Test uses specifically ICompletionExtension since extensions can implement stuff selectively
  • It tests only completions
  • It relies on AssertCompletion

@MikhailArkhipov MikhailArkhipov merged commit e66e554 into microsoft:master Oct 18, 2018
@MikhailArkhipov MikhailArkhipov deleted the 11 branch October 18, 2018 20:15
jakebailey added a commit that referenced this pull request Jan 2, 2019
…ization (#517)

This isn't a complete fix, but does seem to improve #495 in some cases. Adds back the early MRO return removed in #277, so now large class hierarchies won't over-propagate types (where some of the trouble with fastai happens do to the Transform class). I also optimized AnalysisHashSet a little to do length checks when possible.

There are still times when things get caught up comparing unions for a while, but it seems to be nondeterministic.
AlexanderSher pushed a commit to AlexanderSher/python-language-server that referenced this pull request Feb 4, 2019
…set optimization (microsoft#517)

This isn't a complete fix, but does seem to improve microsoft#495 in some cases. Adds back the early MRO return removed in microsoft#277, so now large class hierarchies won't over-propagate types (where some of the trouble with fastai happens do to the Transform class). I also optimized AnalysisHashSet a little to do length checks when possible.

There are still times when things get caught up comparing unions for a while, but it seems to be nondeterministic.
AlexanderSher added a commit that referenced this pull request Feb 4, 2019
* Fix #470 (#478)

* Fix various common exceptions, log on a failed directory load (#498)

* rethrow exception after telemetry instead of disposing

* log an error instead of crashing when hitting some exceptions loading files, fix nullref when shutting down without an idle tracker

* fix short circuiting of question mark checks to prevent null from being returned

* print name of exception instead of relying on ToString

* don't use MaybeEnumerate

* upgrade message to Show

* Mitigate some of #495 via MRO member selection and analysis set optimization (#517)

This isn't a complete fix, but does seem to improve #495 in some cases. Adds back the early MRO return removed in #277, so now large class hierarchies won't over-propagate types (where some of the trouble with fastai happens do to the Transform class). I also optimized AnalysisHashSet a little to do length checks when possible.

There are still times when things get caught up comparing unions for a while, but it seems to be nondeterministic.

* Two path resolution bug fixes

- Fix #509: PLS doesn't flag error in a relative import if it is found in another root directory (#519)
- Fix #510: PLS doesn't resolve relative paths correctly

* Catch exceptions when importing from search paths (#525)

* catch exceptions when importing from search paths

* retry instead of not found
jakebailey pushed a commit to jakebailey/python-language-server that referenced this pull request Nov 1, 2019
Fix overload merge with Typeshed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants