Commit Graph

180 Commits

Author SHA1 Message Date
Charles Gagnon
de1bab9f1e Fix Intellisense not working for saved files (#867)
* Fix tools service to store the corrected file path

* Use ClientFilePath for key

* Further fixes

* Undo spacing changes

* Fix tests

* Trigger CI rebuild
2019-09-19 11:28:40 -07:00
David Shiflet
9d140b53f3 Switch Tools Service to new SMO and Microsoft.Data.SqlClient driver (#865)
* switch to ambient props and targets files

* build against Microsoft.Data.SqlClient

* build tests

* fix test bug

* temporarily add SMO nuget to the repo

* update to released Microsoft.Data package
2019-09-17 17:51:19 -04:00
Kim Santiago
1d1eb00b3b bump dacfx nuget version so that dw will work (#861) 2019-09-05 16:28:20 -07:00
Kim Santiago
89623c1ae8 bump dacfx nuget package version (#860) 2019-09-03 15:53:12 -07:00
Kim Santiago
361287a81b Add Schema Compare support for AAD (#853)
* pass AzureAcountToken if there is one

* Addressing comments

* formatting

* more formatting and moving getting connectionstring from constructor to CreateSchemaCompareEndpoint()
2019-08-22 14:19:39 -07:00
Aasim Khan
487235b1e9 Added endpoint for fetching all notebook jobs (#834)
* Added endpoint for fetching all notebook jobs

* Refractored NotebookJobInfo to AgentNotebookInfo to make it more consistent with the rest of the codebase

* Added Notebook History endpoint in contracts.

* Added Create, Update, Delete notebook endpoints. Also added separate fetch template, materialized notebook endpoints. This will make the Notebook Request and Notebook History responses lighter.

* AgentNotebookInfo is now derived from AgentJobInfo

* added fetch noteook history endpoint

* Added fetching materialized notebook endpoint

* Added code for cleaning up the directory

* Added create notebook api

* Added Update and delete notebook job

* Fixed notebook history API

* Added last run info to the script and template folder

* Added execute database feature for notebook Jobs

* SQL commands are now using sqlparameters to prevent
any injection attacks

* Changed rundate and runtime to string to preserve
leading zeros

* integration test for agentnotebooks api

* Made some changes mentioned in PR

* Refactored the code, removed enpoint logic from the notebook handler and
wrote test cases

* changes select statements, fixed a bug in the test job cleanup
and fixed other stuff mentioned in the PR.

* added notebook_error column in notebook history select statement

* Added get template notebook endpoint
2019-08-22 12:37:19 -07:00
Udeesha Gautam
68145d5e7c Feature/sqlcmd : Enable running scripts with SQLCMD variables - Part 1 (#839)
* Part1 : Changes to make cmdcmd script to work with parameters in script

* Stop SQL intellisense for SQLCMD

* Adding test for Intellisense handling of SQLCMD page

* Removing unintentional spacing changes caused by formatting

* Updating with smaller CR comments. Will discuss regarding script vs other options in batch info

* Removing unintentional change

* Adding latest PR comments
2019-08-09 14:25:47 -07:00
Udeesha Gautam
4fe02a6885 Update dacfx to latest preview (#845)
* updating dacfx with private nuget for testing

* Updating to real dacfx-preview version

* Removing additional refs added by nuget package manager (these were not there previously)
2019-08-08 20:55:06 -07:00
Shengyu Fu
4f4d94bb88 Merge branch 'shengyu_0804' of https://github.com/shengyfu/sqltoolsservice into shengyfu-pr/842 2019-08-07 11:56:14 -07:00
Shengyu Fu
9bbc7a20c9 Fix tests with the updated the Command class 2019-08-05 16:22:51 -07:00
Charles Gagnon
92bb281cdd Ensure test file is deleted and fix test project path (#843)
* Ensure test file is always deleted

* Fix up project path
2019-08-05 14:05:32 -07:00
Shengyu Fu
e1b9890f5c Adding completion extension loading and execution logic (#833)
* Adding ICompletionExtension interface

* Adding extension loading and execution logic

* Fixing compilation error in VS 2017

* Using MEF for completion extension discovery

* using await on GetCompletionItems

* Adding an integration test for completion extension and update the completion extension interface

* Update the completion extension test

* Fix issues based on review comments

* Remove try/cache based on review comments, fix a integration test.

* More changes based on review comments

* Fixing SendResult logic for completion extension loading

* Only load completion extension from the assembly passed in, add more comments in the test

* Adding right assert messages in the test.

* More fixes based on review comments

* Dropping ICompletionExtensionProvider, load assembly only if it's loaded at the first time or updated since last load.

* Fix based on the latest review comments

* Adding missing TSQL functions in default completion list

* Update jsonrpc documentation for completion/extLoad
2019-07-19 12:04:03 -07:00
Charles Gagnon
c1f2411b02 FIx intellisense cache not refreshing (#831)
* FIx intellisense cache not refreshing

* Remove extra newlines

* Output label to provide more useful information in case of error
2019-06-27 23:50:41 +00:00
Udeesha Gautam
a6450eb180 Bug/schemacompare publish and script tasks to send back results (#830)
* Fix Schema compare Publish and Script generation task to return back error messages correctly.

* Elaborating test a bit more to cover tasks

* Validate one task at a time for better clarity

* send back only errors not whole messages since task view doesnt have a good way (other than hover text) to show long messages

* Fixing the negative test cases
2019-06-27 15:55:26 -07:00
Aditya Bist
fc50913f14 chagned strings to enums and can edit step completion actions (#827) 2019-06-20 00:30:37 -07:00
Udeesha Gautam
347d233e95 Change to pass Schema compare Operation id from ADS (#828)
* Changing that SC Operation id be passed from ADS and some test addition

* Fixing typos
2019-06-19 09:49:50 -07:00
udeeshagautam
3e1f186891 Schema compare cancel operation (#826)
* First cut of schema compare cancel (private nuget)

* Update Dacfx nuget to a published version
2019-06-14 18:19:36 -07:00
udeeshagautam
432e054d55 Feature/schemacompare scmp save (#824)
* First cut of scmp Save related changes and some test refactoring

* Adding Exclude/Include objects in saving

* Add diff entry validation as part of test

* Adding PR comments - major change is change to nameparts in place of name hence preserving any "."/"[" in name and avoiding any string operations

* One more UT scenario addition for create excluded object
2019-06-13 17:28:59 -07:00
Kim Santiago
b451670222 Schema Compare open SCMP file (#825)
* initial open scmp changes

* more open scmp changes and adding tests

* moving some common test code

* simplify endpoint info parsing

* addressing comments and moving more common test code

* addressing comments
2019-06-13 14:24:19 -07:00
Kim Santiago
3566471c6c removing unused request context from dacfx and schema compare tests (#823) 2019-06-10 16:58:31 -07:00
Kim Santiago
f7c86a80ca Open dacfx deploy script instead of saving to file path (#822)
* open dacfx deploy script

* moving test db cleanups into finally blocks
2019-06-10 09:26:42 -07:00
udeeshagautam
b30926b273 Adding some default values to match SSDT and other tools (#818)
* Adding some default values to match DacFx deploy Extension and other tools. This help the default behavior but doesn't fix the issue.

* Fixing a test for default values and adding comment
2019-05-24 10:51:21 -07:00
kisantia
e68b6d62aa Open schema compare generated script (#813) 2019-05-20 14:14:50 -07:00
udeeshagautam
db70f421ae Fix for Full/Log/Differential backup #5370 (#811)
* fixing the order of setting backup properties so that they are correctly propogated to actual action

* Adding a backup type specific test and enabling 'few' old ones which seem to work consistentenly

* Adding finally block, close connection and name change as per PR comments
2019-05-14 17:00:21 -07:00
udeeshagautam
f8cd355e61 Feature/schemacompare Exclude-Include and Options enhancement (#799)
* Initial code for Including/Excluding individual changes (no tests added yet)

* Adding Exclude include tests. Default options call and additional options tests.

* Taking PR comments

* Retry in test for reliability
2019-04-25 22:07:00 -07:00
Charles Gagnon
85f34b65f1 Fix a number of cred scan hits (#800)
Bunch of secrets in files, usually fixed by generating random password. The deleted script files didn't seem to be used anywhere.
2019-04-24 13:31:34 -07:00
Dhruva N
e9bf57bc67 Include ManagedBatchParser tests to improve code coverage (#793)
* Include ManagedBatchParser test to improve code coverage

* Fix some failing test cases and revert appveyor.yml
2019-04-22 17:35:48 -07:00
udeeshagautam
9e14336293 Feature/schemacompare options (#798)
* Initial working code for schema compare options

* Removing the unnecessary default value attribute

* Cleaning up tests

* Taking PR comments

* Taking name change for Schema Compare Options --> Deployment Options

* Remove parent to avoid circular reference (to avoid issues with serialization)
2019-04-18 12:52:10 -07:00
kisantia
213fe4ab37 Add schema compare publish changes operation (#795)
* add schema compare publish changes operation
2019-04-09 15:04:59 -07:00
kisantia
dc5ab60df5 Fix invalid dacpac version crashing sqltoolsservice (#789)
* fix invalid dacpac version crashing sqltoolsservice
2019-04-03 17:30:10 -07:00
kisantia
0c46c5bfdb Add schema compare generate script operation (#787)
* add generate script operation
2019-03-29 14:12:37 -07:00
kisantia
01bcfd8df9 Add Schema Compare (#777)
* successfully sends list of differences to ADS

* bumping dacfx nuget package version

* add second schema compare try for case when first db to db comparison fails but works on second try

* move schemacompare out of dacfx folders

* capitalizing

* more capitalizing

* addressing comments
2019-03-05 11:43:06 -08:00
udeeshagautam
676ce9c7de Missing one spelling Fix (#778) 2019-03-01 14:51:15 -08:00
udeeshagautam
9551022fff Feature/cms backend (#776)
* First cut of CMS get Server Api - returns only names

* Adding Proper naming and some more functions

* Adding add remove Server and tests for it

* Changing relative path to derive from KeyChain.Urn and Nuget update

* Adding async thread for requests

* Addressing CR comments and adding one more test

* Adressed PR comments around naming
2019-03-01 11:55:19 -08:00
Karl Burtram
022282800a Move managed parser into its own project (test code coverage) (#774)
* Created New ManagedBatchParser project in .NetStandard

* Addressing PR Comments

* Resolve 'No Repository' warning.

* Move batch parser tests to integrations test project

* Fix SLN file
2019-02-07 20:13:03 -08:00
kisantia
0a172f3c8e Add DacFx Generate Deploy Plan Operation (#768)
* initial adding upgrade plan

* upgrade plan request from ADS works

* now data loss operations are returned

* fixes after rebasing

* refactoring to use GenerateDeployPlan instead of UpgradePlan

* improving test

* Addressing comments

* changing abstract execute to virtual

* changed GenerateDeployPlanOepration to use Execute()

* addressing comments

* simplyfing deploy options

* adding deploy options to deploy and generate script operations
2019-02-06 17:22:20 -08:00
kisantia
1917100bfb Add DacFx Generate Deploy Script operation (#759)
* Adding DacFx Generate Deploy Script operation
2019-01-25 11:34:28 -08:00
Karl Burtram
0fd98df79b Update SqlClient to 4.6.0 (#761) 2019-01-07 16:22:35 -08:00
kisantia
d5fd968b3c DacFx import/export (#728)
Adding DacFx import/export/deploy/extract functionality
2018-11-27 16:10:46 -08:00
Matt Irvine
7f28f249de Add support for Azure Active Directory connections (#727) 2018-11-13 11:50:30 -08:00
Karl Burtram
df023da0ba Revert "Rollback SMO to latest 14.0 version (#722)" (#723)
This reverts commit 407e9feb40.
2018-10-30 17:20:25 -07:00
Karl Burtram
407e9feb40 Rollback SMO to latest 14.0 version (#722)
* Rollback SMO to latest 14.0 version

* Add back nunit package reference
2018-10-30 12:13:23 -07:00
Karl Burtram
2b6eeb19ab Update references to use non preview references (#718) 2018-10-24 17:23:23 -07:00
Karl Burtram
a241a4510b Bump .Net Core SDK to 2.2.100 Preview (#715)
* Bump .Net Core SDK to 2.2

* Update travis file

* Try to fix broken AppVeyor code coverage
2018-10-22 15:54:17 -07:00
Aditya Bist
0efed221ee Agent/improve steps (#710)
* added stepInfo for editing jobs/steps

* added schedules to history requests

* added alerts and schedules to history

* formatting

* code review comments

* removed smo import

* changed and optimized histories, steps, alerts and operators
2018-10-16 13:24:32 -07:00
Matt Irvine
f45155aa4a Fix OE and Binding Queue reliability bugs (#702) 2018-10-05 14:14:36 -07:00
David Shiflet
f99061866c Upgrade SMO to 150 preview (#701)
* Switch to the unified SMO NuGet so all binaries are strong named and signed.

* use one AssemblyLoader instance for all loads

* Revert "use one AssemblyLoader instance for all loads"

This reverts commit 48c59ffd5c57152de281c87acdbcad7ddf7ab760.

* Stop creating multiple AssemblyLoadContext objects during composition, per https://github.com/dotnet/coreclr/issues/19632

* restore high entropyva property

* Improve the comment

* Update SMO to 150 and fix scripting for objects with a single quote in their name.

* restore newtonsoft reference
2018-10-03 18:33:40 -04:00
Karl Burtram
d31ce985ce Check that connection is open in ReliableConnectionHelperTest (#694) 2018-09-25 14:23:29 -07:00
ranasaria
09652cccd1 Enhanced Logging for sqltoolsservice (#695)
This change modifies the logging framework within sqltoolservice.
Moves away from custom Logger object to start using .Net tracing framework. It supports for the static Trace and TraceSource way of logging. For all new code it is recommend that we log the log messages using the existing static Logger class, while the code changes will continue to route the older Trace.Write* calls from the process to same log listeners (and thus the log targets) as used by the Logger class. Thus tracing in SMO code that uses Trace.Write* methods gets routed to the same file as the messages from rest of SQLTools Service code.
Make changes to start using .Net Frameworks codebase for all logging to unify our logging story.
Allows parameter to set tracingLevel filters that controls what kinds of message make it to the log file.
Allows a parameter to set a specific log file name so if these gets set by external code (the UI code using the tools service for example) then the external code is aware of the current log file in use.
Adding unittests to test out the existing and improved logging capabilities.


Sequences of checkins in development branch:
* Saving v1 of logging to prepare for code review. Minor cleanup and some end to end testing still remains
* Removing local launchSettings.json files
* added support for lazy listener to sqltoolsloglistener and removed incorrect changes to comments across files in previous checkin
* Converting time to local time when writing entries to the log
* move the hosting.v2 to new .net based logging code
* removing *.dgml files and addding them to .gitignore
* fixing typo of defaultTraceSource
* Addressing pull request feedback
* Adding a test to verify logging from SMO codebase
* propogating changes to v1 sqltools.hosting commandoptions.cs to the v2 version
* Fixing comments on start and stop callstack methods and whitespaces
* Commenting a test that got uncommented by mistake
* addding .gitattributes file as .sql file was observed to be misconstrued as a binary file
2018-09-24 23:55:59 -07:00
Karl Burtram
066be2f46f Revert "Switch to the unified SMO NuGet" (#686)
* Revert "fixed perf tests and added more scenarios (#683)"

This reverts commit aa2b30f486.

* Revert "Switch to the unified SMO NuGet so all binaries are strong named and signed. (#682)"

This reverts commit 69961992bb.
2018-09-04 11:01:44 -07:00