VSCode serialization changed rejection handling to only serialize errors, which caused things to break
- Changed to return either account info or a cancel message in the resolve
- Rewrote to use promises. Tracking how to return canceled through 4+ thenables was way trickier than just using a promise
- Updated unit tests to handle new scenario
- Tested integration tests, realized they a) didn't run and b) didn't passed.
- Added vscode dev dependency to fix run issue
- Fixed tests to account for behavior changes in tree state.
* removes more builder references
* remove builder from profiler
* formatting
* fix profiler dailog
* remove builder from oatuhdialog
* remove the rest of builder references
* formatting
* add more strict null checks to base
* enable strict tslint rules
* code layering of base
* wip
* working through changes to table data view
* fix tests
* update editabledropdown to not use layout service
* wip
* fix imports
* fix import
* fix compile error
* add more localization
* add comments to changes to import patterns
* add more import comments
* first set of changes to experiment the registration of cms related apis
* Adding cms service entry to workbench
* Adding basic functionality for add remove reg servers and group
* Returning relative path as part of RegServerResult as string
* initial extension
* cleaned building with connecting to server
* get list of registered servers
* progress with registered servers tree
* cms base node with server selection
* removed unused services
* replaced azure stuff with cms
* removed cmsResourceService
* list servers progress
* Removing the cms apis from core. Having mssql extension expose them for cms extension
* create server working fine
* initial expansion and nodes
* Propogating the backend name changes to apis
* initial cms extension working
* cached connection needs change in api
* connect without dashboard in proposed
* Fixing some missing sqlops references
* add registered server bug found
* added refresh context menu option
* added payload
* server description not disabled after reject connection
* added more context actions and action icons
* added empty resource and error when same name server is added
* fixed connection issues with cms and normal connections
* added initial tests
* added cms icons
* removed azure readme
* test script revert
* fix build tests
* added more cms tests
* fixed test script
* fixed silent error when expanding servers
* added more cms tests
* removed cmsdialog from api
* cms dialog without object
* fixed theming issues
* initial connection dialog done
* can make connections
* PM asks for strings and icons
* removed search
* removed unused code and fixed 1 test
* fix connection management tests
* changed icons
* format file
* fixed hygiene
* initial cr comments
* refactored cms connection dialog
* fixed bug when switching dialogs
* localized connection provider options
* fixed cms provider name
* code review comments
* localized options in cms and mssql
* localized more options
* Connect opened query editors to the ser
* only show firewall rule error for one file
* remove unused imports
* sync to latest
* add comment
* one more comment
* Fixed#4772 create unique connection for each notebook by using notebook path as uri
Disconnect sqlConnection from SqlKernel to ensure no connection left after the notebook is closed.
* SqlSessionManager is ADS level manager
* Moved path to SqlKernel constructor
This is a partial fix that lays groundwork for full "Prompt to connect" if a kernel needs a connection.
I am waiting on Yurong's refactoring of connection handling before doing any of the prompt work.
- Adds kernel metadata about whether a connection is required.
- For Jupyter, only Spark kernels are listed as requiring a connection
- If this is true and there's no active connection, will show notification and not call execute
In the future, this path will still be used if user is prompted to connect and cancels out.
The future change will be to inject a "connect" handler from notebook.component to the cell callback and use to set connection context
* Fixed#4800 need to use ConnectionProfile in order to get the correct connection
* Go back to create connect in run cell to avoid to fail to run cell or close the connection used by other.
* runAllCells API
* add comment
* more run cells fixes
* Add integration test
* Add multiple cell SQL notebook test
* Comment out python tests as they fail in the lab
* remove unused imports
* PR comments
* Remove localize
* Return true instead of promise.resolve(true)
* Fix workspaceRoot macro for insights
The workspaceRoot macro wasn't working correctly for finding the queryFile. There were a couple of issues :
1. The path separators were hardcoded as / which wasn't xplat-compatible
2. They required the first section of the path was one of the folders in the workspace - e.g. if the workspace contained a folder named foo you'd have to specify ${workspaceRoot}\foo\myfile.sql. This is inconsistent with the folder logich was just appends the path after ${workspaceRoot} to the folder that's currently open
I changed the logic to just append the relative part of the path to every folder currently open in the workspace and choose the first one that it found that contained the file we were told to look for - which follows the convention the folder logic uses. If the file doesn't exist it'll just fall back to using the path without the macro (which is likely to not resolve and thus will display an error, but there's nothing we can do at that point anyways)
* Switch to using VS Code resolver (support for more than just workspaceRoot) and move resolution code into helper method so it can be used by the multiple places it's called. Added tests for the methods.
* Add test for invalid param
* Change resolveQueryFilePath to be a standalone exported function. Change it to throw if the file can't be resolved/found so callers can display error correctly. Added more tests to covery new scenarios. Switch to using pfs instead of fs for file existance checks.
* Add extra param to InsightsDialogController construction in test
* Fix formatting and test errors.
* Change to suiteSetup and suiteTeardown so the setup/teardown is only ran once instead of once per test - we don't need unique files and this stops a race condition error with deleting the test folder.
* spaces -> tabs
* Merge from vscode 37cb23d3dd4f9433d56d4ba5ea3203580719a0bd
* fix issues with merges
* bump node version in azpipe
* replace license headers
* remove duplicate launch task
* fix build errors
* fix build errors
* fix tslint issues
* working through package and linux build issues
* more work
* wip
* fix packaged builds
* working through linux build errors
* wip
* wip
* wip
* fix mac and linux file limits
* iterate linux pipeline
* disable editor typing
* revert series to parallel
* remove optimize vscode from linux
* fix linting issues
* revert testing change
* add work round for new node
* readd packaging for extensions
* fix issue with angular not resolving decorator dependencies
* Fix#4452 Notebook is reloaded with wrong kernel
- Await all extension registration before getting providers and providerId
To do this, we need to await way up in the NotebookInput, and promise the model that we'll have values eventually
* change shutdown to use proper notification
* change to use storage service
* remove unused imports
* fix test
* change shutdown methods to private
* remove unusde imports
* fix tests
* formatting