* Everything building, but not running
* More tests passing
* Fix test to open a file
* Remove unused functions and consolidate others
* Remove unused custom lsp messages
* Add comments
* Preliminary idea
* First commit
* Refactor all uri based path functions to uriUtils
* Most of real code building
* More tests working
* More progress on the tests
* Rest of typecheck errors
* Move URIs even further to prevent accidental issues
* More tests
* Relative path fixes
* More test fixes and changes to 'startsWith'
* Uri tests all passing
* remove uri tests from path utils tests
* Fix relative paths for partial stub remapping
* Make isEmpty look empty and fix empty check for resolved paths
* Fix module name retrieval issue
* Use map instead of set for URI list
* Another path is empty fix.
* Fix importresolver finding source files for stubs
* Fixup actual defs to match expected format
* Relative path differences again
* Fix some comparisons
* More comparison fixes
* Config of ('.') was using current directory to find module names
* Shortcut empty URI for existence
* Add back ignoring case
* Fix regex matching
* All tests passing
* Fix build after merge
* Fix failing tests
* Fix rootDirectory and python path from interpreter
* Some perf improvements
* Don't bother reparsing in file system
* More tests and some logging output
* Extra data for analyzing slowness
* Fix build problems
* Refactor to not use vscode.URI except for initial parse
* Try without vscode uri validation
* Rework to new perf idea
* Split out class and interface
* All uri tests passing
* Fix other tests
* Cache results for faster perf
* Add memoization decorator
* combinePath remove one layer and make key gen faster
* Move caches local
* Generalize the memoization and optimize zero arg funcs
* Cache more stuff
* slight speedup for cache saving
* slight improvement by just returning the cached item
* Small optimization to skip loop if possible
* Further speedup for similar calls of combinePath
* Make it possible to switch between profiled and not
* Another small optimization
* Cache files in directory
* Small opt for isNativeModuleFileName
* Speed up getting pytyped info
* Fix command line parsing to expand ~
Slight perf improvement for exists cached by not splitting
* Split out instrumenting memoization
* Remove instrumented memoizationin
* Fix comment
* Fix build on ubuntu/mac
* Fix windows specific problems with tests
Fix auto import to work with windows file paths
* Fix command line output
* Try fixing CI path for failing test
* fix output paths in other spots
* More file output locations
* Output more data for failing test
* Put validation back and fix test
* Fix import cycles message to not show URI path
* Remove printing of config options
* More review feedback
* Missed a spot in the review feedback
* Fix build error
* Update packages/pyright-internal/src/analyzer/importResolver.ts
Co-authored-by: Erik De Bonte <erikd@microsoft.com>
* Update packages/pyright-internal/src/analyzer/analyzerFileInfo.ts
Co-authored-by: Erik De Bonte <erikd@microsoft.com>
* Update packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts
Co-authored-by: Erik De Bonte <erikd@microsoft.com>
* Review feedback from Erik
* Revert changes to launch.json
* Fixup config options to use same roots as before
* Fix casing for cwd test on windows
* Fix spack differences
* Add back in the instrumentation until figure import resolve cache
* Fixup after merge
* Fix another equals comparison
* Merge error
* Fix after merge
* Fixup after merge
* Keep track of case sensitivity in the URIs
* Fix test failures on windows/mac
* Switch to the faster version
* Remove memoization
* Review feedback for some renames
* Review feedback
* Feedback from Erik, put back memoization for simple stuff
* fix prettier
* Fix typo and cache URI creations
* Add a comment
* Review feedback from Eric
* Fix crash in config options
* Missed a piece of feedback
---------
Co-authored-by: Erik De Bonte <erikd@microsoft.com>
* Push pylance changes to pyright
* Update packages/pyright-internal/src/backgroundThreadBase.ts
Co-authored-by: Erik De Bonte <erikd@microsoft.com>
---------
Co-authored-by: Erik De Bonte <erikd@microsoft.com>
Co-authored-by: Bill Schnurr <bschnurr@microsoft.com>
Co-authored-by: HeeJae Chang <hechang@microsoft.com>
Co-authored-by: Erik De Bonte <erikd@microsoft.com>
Co-authored-by:
Co-authored-by: Bill Schnurr <bschnurr@microsoft.com>
Co-authored-by: HeeJae Chang <hechang@microsoft.com>
Co-authored-by: Erik De Bonte <erikd@microsoft.com>
Co-authored-by:
Co-authored-by: Bill Schnurr <bschnurr@microsoft.com>
Co-authored-by: HeeJae Chang <hechang@microsoft.com>
Co-authored-by: Erik De Bonte <erikd@microsoft.com>
Don't raise await error on top level statement in ipython mode, update dependencies
1. Co-authored-by: Bill Schnurr <bschnurr@microsoft.com>
2. Co-authored-by: HeeJae Chang <hechang@microsoft.com>
3. Co-authored-by: Erik De Bonte <Erik.DeBonte@microsoft.com>
Rollup of:
- Update dependencies; TS 4.4, Prettier 2.4
- Explicitly handle unrooted execution environments (e.g., open file mode), preventing various crashes and oddities.
- Generate default values in method overload signatures. Previously, we didn't include them, which generated the wrong signature.
- Disable webpack caching (which recently broke upstream).
- Use attribute docstrings for type aliases in completion and hover.
- Clean up import resolver search path cache, which was leftover from the per-execution environment python interpreter removal.
- Modify parser to change the range of parenthesized expressions to their contents. This improves the ranges returned in hovers, document highlight, etc.
- Add boolean to ConfigOptions to check if the config was loaded from a config object (i.e., was produced in part by a `pyrightconfig.json` or `pyproject.toml` with a pyright section).
Co-authored-by: Bill Schnurr <bschnurr@microsoft.com>
Rollup of:
- Verify `package-lock.json` state in checks to avoid lerna modifying things.
- Add infrastructure for module abbreviations in completions.
- Removed unused auto-import mapping from `completion/resolve` handler.
- Add `isInImport` to completion data for checking the completion context.
- Allow completion verification in fourslash tests to be overridden.