Commit Graph

360 Commits

Author SHA1 Message Date
Lewis Sanchez
08e855aa1d Implements Contextualization API into Azure Data Studio to get better query recommendations from extensions like Copilot (#2159)
* Add contract to get all metadata request

* Add new metadata service request endpoint

* Adds factory to make database server scripts

* Minor clean up

* Corrects filename typo

* Cleans up SmoScripterFactory

* Stubs out metadata cacher

* Method clean up

* Add writing and reading to script cache

* Cleans up request endpoint flow

* Add missing edge case when cache isn't empty

* Remove unused code

* Remove unneeded null check

* Read to end of stream

* Passes correct parameter to write cache

* Adds integration test to get all scripts

* Renames new request endpoint

* Rename request class to AllServerMetadataRequest

* Renames server metadata request endpoints

* Refresh cache and adjusts return obj type

* Clean up

* Assert table script generation

* Minor cache refresh adjustment

* Ensure test create table script is accurate

* Code review changes

* Additional code review changes

* Swap logger write for logger warning

* Renames generate request endpoint methods

* Remove unused using statement

* Remove unnecessary create table check

* Check if previous script file is valid for reuse

* Pascal case for method name

* Code review changes

* Fix PR issues

* Update doc comment

* Fixes tests after code review changes

* Fix failing int. test due to 30 day temp file expiry

* Generalize type names and update request endpoint

* Updates doc comment.

* Remove 'database' from type and method names

* Code review changes

* Code review changes

* Issues with background thread.

* Remove thread sleep for test reliability

* Remove reflection from int. tests
2023-08-22 12:28:32 -07:00
Barbara Valdez
16c7e32356 Add processors tab (#2166) 2023-08-21 13:24:48 -07:00
Aasim Khan
5d7d418894 adding missing ref (#2176) 2023-08-19 15:20:22 +00:00
Aasim Khan
73c2a75fba Creating a new Sql Core project that stores OE classes. (#2165)
* init

* More fixes

* moving filters from contracts to core OE classes

* Fixing some tests

* More fixes and added doc comments

* Fixing tests

* Quick refactoring

* more cleanups

* cleanup

* Adding stateless OE

* Adding null checks

* Making group by schema independent of settings

* Fixing tests

* Removing node info from core oe code

* Fixing tests and moving OE code to its own project

* moving oe to own project

* Removing changes to Kusto

* Removing azure access token from service layer

* Fixing project description and title

* Fixing file name typo

* Removing unused  strings from service layer

* Fixing localized strings in tests
Adding comments to stateless OE

* Fixing stuff

* Update src/Microsoft.SqlTools.SqlCore/Microsoft.SqlTools.SqlCore.csproj

Co-authored-by: Charles Gagnon <chgagnon@microsoft.com>

* Fixing project nesting

* Fixing more stuff and removing OE class

* Cleanup

* Code cleanup

* fixing oe service provider

* Fixing test name

* Remove using

* Update src/Microsoft.SqlTools.SqlCore/ObjectExplorer/SmoModel/SmoQueryContext.cs

Co-authored-by: Charles Gagnon <chgagnon@microsoft.com>

* Fixing syntax error

* Adding project to locproject

* Fixing stuff

* Fixing errors

* sorting usings

---------

Co-authored-by: Charles Gagnon <chgagnon@microsoft.com>
2023-08-16 22:11:35 -07:00
Sai Avishkar Sreerama
e4db70fb39 Enabling Database scoped configurations tab to DB Properties (#2147)
* sending dsc values to ADS

* modifying dsc method with unsupportable property IsValuedefault

* getting the options and added a bool flag to maintian checkbox for secondary to save

* sending data to ads

* Ready for PR with minimal changes of loading UI as expected, TODO:saving logic

* Excluding maxdop and resumable options from primary value conversion for 1/0's

* Adding Id to the info, as we cannot depend on names, as names can be altered in future

* saving successfully, todo-diff servers, script (secondary - primary compare and dont update),test, send null for unsupported

* adding nullable dsc for unsupported servers

* fixing script generation for some properties that are not touched. the generated script is unharmed but unnecessary here

* adding test conditions for database scoped configurations

* adding switch case method to get the values

* Removing Loc string for the TSQL options

* removing unnecessary using statement

* Adding test case and fixing createDatabase issue

* Update src/Microsoft.SqlTools.ServiceLayer/Admin/Database/DatabasePrototype130.cs

Co-authored-by: Charles Gagnon <chgagnon@microsoft.com>

* comment update

---------

Co-authored-by: Charles Gagnon <chgagnon@microsoft.com>
2023-08-15 11:58:35 -05:00
Cory Rivera
7c0da6b6b1 Add extra delete database functionality to DatabaseHandler (#2168)
* Also fixed connections not being properly closed in Detach operations
* Fixed errors being thrown in InitializeObjectView because certain db property fields are not supported against Azure
2023-08-11 13:06:35 -07:00
Charles Gagnon
969ac0ed8c Use Logger overloads (#2163) 2023-08-02 13:25:21 -07:00
Cory Rivera
46fa477717 Provide default indexes for database option values instead of reordering options lists (#2156)
* Also re-add <default> to owners list for new database dialog
2023-07-27 16:11:49 -07:00
Barbara Valdez
e14828e0d4 Send min and max values for server properties (#2130) 2023-07-07 13:03:25 -07:00
Barbara Valdez
8dfd50ff50 disable test (#2131) 2023-07-07 08:45:20 -07:00
Barbara Valdez
4c4d6584b3 Update memory settings and implement ServerPrototype (#2126) 2023-07-06 17:25:45 -07:00
Sai Avishkar Sreerama
11f632aaa9 Sai/db properties options tab (#2121)
* Sending values to ADS, including the arrays, need refactor and tests

* adjusting dd options as per ssms

* sending back the updated options properties to smo

* saving changes

* pulling correct database name changes

* Refactoring

* saving is working fine

* Added genral tab section options for the option tab

* modifying userAccess and pageVerify props types

* fix for database name being master for always for existing database

* Managed Instance save error fixed

* added new assertions to the test case

* server engine edition conditions handling from ADS side

* Adding unsupported options approach to the properties, so that these nullable options can be excluded from UI

* modifying the props name

* modified empty string to null

* Test case update
2023-07-06 13:48:11 -04:00
Barbara Valdez
c2d53a3215 Get server general properties (#2117)
* add server handler

* get server general properties
2023-06-28 16:39:37 -07:00
Aasim Khan
6b251bd24a Adding like filter and removing contains to OE filtering (#2105)
* Adding startswith and like filter

* Adding ends with

* Adding tests

* Remove null and not null

* Fixing string

* Update test/Microsoft.SqlTools.ServiceLayer.UnitTests/ObjectExplorer/NodeFilterTests.cs

Co-authored-by: Charles Gagnon <chgagnon@microsoft.com>

* Update test/Microsoft.SqlTools.ServiceLayer.UnitTests/ObjectExplorer/NodeFilterTests.cs

Co-authored-by: Charles Gagnon <chgagnon@microsoft.com>

* Adding back contains, starts with and ends with

* Properly escaping chars for like based filters

* Adding some comments regarding escape characters

* Using generated regex

* removing additional class

* Adding extra auth type that was causing the tests to error out

* Fixing regex

* Adding integration tests

* Fixing unit tests

* Making fluent assertions

---------

Co-authored-by: Charles Gagnon <chgagnon@microsoft.com>
2023-06-28 16:17:20 -07:00
Sakshi Sharma
4334d79d76 Add "Open XEL file" support to profiler in sqltoolsservice (#2091)
* Open XEL file changes

* placeholders for openxel

* add observable xe reader

* md format tweaks

* implement localfile as a new session type

* add ErrorMessage to session stopped notice

* fix flaky test

* handle already running session

* fix stopped session event send on file completion

* fix flaky unit test

* Update XElite and dependent versions

* Fix errors after merge and remove failing tests for now

* Fix main merge mess-up.
Address comments.
Add one more relevant test.

* Remove extra namespace.

* Remove unnecessary import

* Fix build error

* Address comments.

* Remove disabiling JSON002 compiler warning

* Address comments and update json handling

* Fix build error

* Fix integration test (emerged due to Main merge mess up)

* Clean up code (no functional changes)

---------

Co-authored-by: Karl Burtram <karlb@microsoft.com>
Co-authored-by: shueybubbles <david.shiflet@microsoft.com>
2023-06-27 14:25:18 -07:00
Kim Santiago
95a094438e Fix for schema compare dropping constraints (#2120)
* fix for scripts that are displayed in schema compare drop constraints bug

* update DacFx version

* add more comments
2023-06-26 14:01:28 -10:00
Cory Rivera
9d0d4b0cae Enable Detach Database in database handler (#2110) 2023-06-22 17:28:41 -07:00
Sai Avishkar Sreerama
5c7dae40e6 Enabling database properties general tab with real time values from SMO (#2093)
* initial commit with all required db handler and props, also getting the data from ADS

* database properties view updated

* Delete Microsoft.SqlTools.ServiceLayer.sln

This file should be ignored

* Removed unwanted file

* Using DatabaseHandler for properties as one handler per object

* removed unused and unnecessary changes

* minimal updates

* moving type conversion to UI side, properties with original types.

* conversion number fixed

* Adding Localized strings

* using existing objectUrn logic to get the smo object

* Adding Integration tests for database properties verification

* refactoring

* updating test
2023-06-21 19:41:18 -05:00
Alan Ren
7f6b357eb0 fix delay in query execution (#2109)
* fix delay in query execution

* fix test case
2023-06-19 16:31:47 -07:00
Cory Rivera
c92bc71454 Exclude Data Warehouse as an option when creating an Azure database (#2100) 2023-06-13 16:04:23 -07:00
Cory Rivera
808172bc20 Retrieve Azure SLO details in Database Handler (#2094) 2023-06-12 11:44:17 -07:00
Cory Rivera
0ad169781e Replace <default> values in Owner and Collation fields for Create Database dialog (#2086) 2023-06-02 16:19:00 -07:00
Kim Santiago
a12244f3d0 Add support for adding system db references as PackageReference (#2078)
* Expose adding system db references as PackageReference

* update nuget
2023-06-01 11:38:28 -07:00
Cory Rivera
0a5a7b4cc5 Address remaining comments for Object Management Database Handler (#2081) 2023-06-01 11:02:59 -07:00
Cory Rivera
d5cfc52ca7 Add object management handler for creating a database (#2071) 2023-05-31 12:55:12 -07:00
Hai Cao
d525e88672 Add securable search and permission setting to User Management (#2052) 2023-05-10 18:20:06 -07:00
Benjin Dubishar
c21203c5c2 Adding ability to only load properties and metadata for a SqlProject (#2040)
* Adding property quick-loading

* Remove whitespace
2023-05-03 18:44:17 -07:00
Alan Ren
5dbed25c40 change user type implementation (#2036)
* change user type implementation

* fix build errors
2023-05-01 10:27:00 -07:00
Sakshi Sharma
3e0135b907 Update STS changes to be backward compatible with scmpOpen (#2031)
* Update STS changes to be backward compatible with scmpOpen

* Update cleanup code

* Fix test.
2023-04-24 16:58:06 -07:00
Benjin Dubishar
c5cdc4712a Adding move and exclude folder to SqlProjectService (#2027)
* Adding move and exclude folder

* Fixing cross-plat path bug in test
2023-04-21 11:46:11 -07:00
Benjin Dubishar
006488340c Updating DacFx.Projects to 162.0.28 (#2019) 2023-04-19 20:12:56 -07:00
Alan Ren
e314f839d8 Simplify Object Management APIs (#2015)
* unify requests-wip

* wip

* unify api

* fix test

* add credential handler

* fix credential handler issue.

* generic type update

* fix scripting for user
2023-04-19 15:43:01 -07:00
Cheena Malhotra
648d7dbd3c Address warnings and (some) nullables (#2013) 2023-04-18 20:57:13 -07:00
Kim Santiago
13672c1d05 Add support for nupkg database references in sql projects (#2006)
* add support for nupkg database references in sql projects

* update DacFx.Projects
2023-04-14 16:18:06 -07:00
Karl Burtram
948ae3903e Support scripting for Users (#2002)
* WIP 1

* WIP2

* Fix merge break

* Support alter existing object
2023-04-13 11:52:37 -07:00
Sakshi Sharma
9aa84f517c Send deploymentOptions to DacFx to save in the publish profile xml file (#1997)
* Send deploymentOptions to DacFx to save in the publish profile xml file

* Update Packages.prop with latest DacFx nuget version.

* Update Dacfx version after merge from main.

* Address comments

* Update method name
2023-04-10 17:31:39 -07:00
Karl Burtram
83b58a27a4 Move Login handlers to separate file (#1995)
* Move login handlers

* Move Login handlers to seperate file
2023-04-06 16:07:45 -07:00
Sakshi Sharma
098cf3be35 Update openScmp to read file structure (#1952)
* Update openScmp to read file structure (and dsp) information from the scmp file.

* Address comments
2023-04-04 11:05:36 -07:00
Chris LaFreniere
cccdbf0bef Address CA1829 (Avoiding Count LINQ method calls when equivalent + more efficient properties exist) (#1961)
* Address CA1829 (Avoid Count LINQ Method Calls)

* Remove other change

* CA1829 removal

* CA1829 (remove whitespace)
2023-03-23 21:06:49 -07:00
Karl Burtram
c3444e5cf5 Support creating & editing additional user types (#1962)
* WIP

* Fix contained user password handling

* More user related bug fixes
2023-03-23 18:01:55 -07:00
Karl Burtram
a104251885 Enable support for Windows users (#1957)
* WIP

* Update for Windows user
2023-03-21 19:00:11 -07:00
Alan Ren
692f444ccb simplify drop object request handler (#1953)
* simplify drop object request handler

* fix test cases

* fix issues

* update strings

* fix error

* fix error
2023-03-20 21:54:34 -07:00
Karl Burtram
f59ca1954b Enable user management tests (#1912)
* Enable user management tests

* Fix update user test
2023-03-15 17:52:09 -07:00
Karl Burtram
a074b5bf67 Update User edit handlers (#1903)
* WIP

* Update user tests

* WIP updates

* WIP

* Fix several edit use bugs

* Disable failing tests

* minor updates

* Remove unused using
2023-03-06 14:43:38 -08:00
Benjin Dubishar
b27b7dc379 Adding SetDSP support to SqlProjects service (#1895)
* Adding SetDSP support

* correcting comment
2023-03-02 20:10:13 -08:00
Kim Santiago
bb838269ac Updating add database reference requests to check null or whitespace (#1894) 2023-03-02 16:37:16 -08:00
Benjin Dubishar
38836371ed Adding missing properties to GetProjectProperties call; also renaming NoneScript to NoneItem (#1890)
* Renaming NoneScript to NoneItem

* missed a file

* Fixing comments

* Adding ProjectStyle to properties

* Projects nuget bump

* Adding DatabaseSchemaProvider to the props
2023-03-02 13:52:35 -08:00
Kim Santiago
c7e64e2334 Remove Value in AddSqlCmdVariableParams (#1885) 2023-03-01 10:03:38 -08:00
Benjin Dubishar
68ac1e01fc Adding project property support to SqlProj service (#1883)
* Nuget update

* Updating nuget

* implementation

* GetProperties test

* Adding SetDatabaseSource

* adding comment

* Nuget update

* PR feedback

* Fixing cross-plat path tests

* Updating to signed nuget

* fixing None test
2023-02-28 18:27:42 -08:00
Benjin Dubishar
7941e871d9 Adding SqlProject service support for <None> entries (#1884)
* Implementation

* NoneScript test

* patching up test

* Updating comments
2023-02-28 09:40:20 -08:00