* Move call to STS move api into project.ts (#22071)
* move call to STS move api into project.ts
* remove undefined
* Remove convert to sdk style code (#22081)
* remove convert to sdk style code
* remove from package.json
* Merging latest from main (#22097)
* [SQL-Migration] Login migrations telemetry (#22038)
This PR enhances telemetry for login migrations (and in the following ways:
Add details for starting migration (number of logins migrating, type of logins)
Log Migration result (number of errors per step, duration of each step, type of logins, if system error occurred)
Add sql-migration extension to our telemetry
Adds details when trying to connect to target
Tracks clicking "done" from the wizard
Fixes bucketizing for navigating telemetry in the login migration wizard
Sample usage of kusto query for new telemetry:
RawEventsADS
| where EventName contains 'sql-migration'
| extend view = tostring(Properties['view'])
| extend action = tostring(Properties['action'])
| extend buttonPressed = tostring(Properties['buttonpressed'])
| extend pageTitle = tostring(Properties['pagetitle'])
| extend adsVersion = tostring(Properties['common.adsversion'])
| extend targetType = tostring(Properties['targettype'])
| extend tenantId = tostring(Properties['tenantid'])
| extend subscriptionId = tostring(Properties['subscriptionid'])
| where view contains "login"
//| where adsVersion contains "1.42.0-insider"
| where ClientTimestamp >= ago(18h)
| project EventName, ClientTimestamp, SessionId, view, pageTitle, action, buttonPressed, targetType
, tenantId, subscriptionId
, adsVersion, OSVersion, Properties
* Add Secure Enclaves dropdown with customizable Advanced options (#22019)
* Update extension READMEs (#22079)
* Fix query-history README images (#22084)
* [Loc] update to mssql and sql-migration xlf files (#22087)
* [Loc] small fix to Portuguese lcl file (#22088)
* [Loc] small fix to Portuguese lcl file
* remove newline
* Adding None bindings to the sqlProjects service (#22085)
* Adding None bindings
* updating names of None bindings
---------
Co-authored-by: AkshayMata <akam520@gmail.com>
Co-authored-by: Cheena Malhotra <13396919+cheenamalhotra@users.noreply.github.com>
Co-authored-by: Charles Gagnon <chgagnon@microsoft.com>
Co-authored-by: Alex Ma <alma1@microsoft.com>
* Swap add and update sqlcmd variables in sql projects to use STS apis (#22086)
* delete sqlcmd variable working
* undo add
* remove variable from add and update sqlcmd variable apis
* hookup add and edit sqlcmd variable
* update vscode-mssql.d.ts
* move add and edit to project.ts
* update STS and tests
* move delete sqlcmd variable to project.ts (#22104)
* add test for add and edit sqlcmd variable (#22107)
* Swapping property access to STS (#22115)
* checkpoint
* Adding sqlproj property bindings
* Swapping out property loading and setting
* consolidating to this.sqlProjService
* Update dacpac reference to use STS api (#22116)
* Update add dacpac reference to use STS api
* remove changes for project ref
* validate unset settings from add database reference dialog
* update one more place getting sqlprojservice
* addressing comments
* fix path for dacpac reference (#22143)
* Swap add project reference to call STS (#22148)
* initial changes for swapping add project reference
* fix include path
* move common logic to helper function
* read sqlcmd variables from STS (#22147)
* Swapping .sqlproj- and crossplat compatibility-related functions to use STS (#22146)
* Supporting roundtrip
* Updating sqlproj style checks and cross-platform compatibility to use STS
* removing unnecessary awaits
* Fixing assertions
* Adding roundtrip update confirmations
* test cleanup
* cleaning up comment; localizing error
* Swap add system db reference (#22171)
* swap adding system database references
* fix tests
* remove only in test
* Read database references from STS (#22179)
* Read database references from STS
* fix system dacpac names
* fix project reference name
* Swap changeTargetPlatform to call STS (#22172)
* swap changeTargetPlatform to call STS
* Address comments
* De-duplicating enum for SystemDatabase (#22196)
* Deudping SystemDatabase enum
* simplifying enum refs
* Removing the now-unused imports code from SqlProjects (#22199)
* Removing unused importTargets entries
* whitespace; also to retrigger github checks on correct branch
* Hooking in Move() for Nones and PublishProfiles (#22200)
* Swap delete database reference to call STS (#22215)
* initial changes
* update contracts
* remove unnecessary info from SystemDatabaseReferenceProjectEntry
* uppercase master and msdb
* cleanup
* update test
* update comment
* undo change in projectController.ts
* remove unused system dacpac helper functions (#22204)
* more cleanup of project.ts (#22242)
* fix a couple database reference tests (#22248)
* Organizing sqlcmd variable and db reference code (#22284)
* organize database references and sqlcmd variable functions
* separate database reference tests
* Script and folder get + add support (#22166)
* Initial sqlobjectscripts
* adding mock filter
* test fixing
* another test passing
* swapping pre/post/none checkpoint
* awaiters
* convert addExistingItem
* swapping folders
* removing print
* stripping out project folder and file readers
* adding some regions
* Updating sqlproj style checks and cross-platform compatibility to use STS
* Updating sqlproj style checks and cross-platform compatibility to use STS
* added type property to tree items
* projectController swapovers
* removing imported targets
* Deleting the last of the TS XML parsing!
* Removing old functions
* renamed readNoneScripts to readNoneItems
* fixing path passed to STS calls
* remove system dacpac tests that were moved to DacFx (#22299)
* fix error when opening file after adding a file to sql project (#22309)
* fix error when opening file after adding a file to sql project
* remove unused import
* fix exclude for table and externalStreamingJob (#22310)
* add reload project (#22313)
* set DSP from STS (#22320)
* fix adding post-deployment script and existing item (#22317)
* Test cleanup for .sqlproj content operations (#22330)
* Fixing up tests
* sqlproj content operations tests
* remove only
* Cleanup
* Correcting collation
* cleanup constants.ts (#22336)
* fix folders not showing in project tree (#22319)
* Fix project controller tests (#22327)
* fixing ProjectController tests after swap
* remove only from database reference tests
* change system dbs back to lowercase in sql projects (#22353)
* Bump tools service
* Updated yarn.lock file
* pass SystemDacpacsLocation when building legacy style sql projects (#22329)
* Benjin/fix types (#22365)
* Updated yarn.lock file
* Fixing types
* fix projectController tests (#22375)
* Fixing the deletion flow for files and folders (#22366)
* checkpoint
* PR feedback
* Fixing up SDK-style operations project test group (#22377)
* Fixing up SDK-style project test group
* Removing .only
* Fixing up database reference tests (#22380)
* Fixing DB reference test group
* Extra cleanup
* removing only
* Consolidating None and PublishProfile; lighting up test (#22382)
* Lighting up project property tests (#22395)
* Checkpoint
* Lighting up project property tests
* removing timeout
* Fixing buildHelper test (#22400)
* Unskipping up roundtrip test (#22397)
* Refactoring database references to split literalVariable from databaseName (#22412)
* refactoring database references to split databaseVariableLiteralValue out from databaseName
* renaming more properties
* Removing branch in entry population
* removing only
* Fixing baselines for delete test
* PR feedback
* Fixing up ProjectTree tests (#22419)
* Fixing up projectTree tests
* remove only
* Updating projectController exclude test (#22413)
* Updating test
* moving filtering for external folders to readFolders() method
* Removing EntryType import
* fix ups (#22435)
* adding extra info for test failure
* hide exclude folder from context menu until it's supported (#22454)
* Adding current test name to generated folder to avoid conflicts (#22478)
* Adding current test name to generated folder to avoid conflicts
* passing correct test parameter in
* Adding trimming and entropy
* Deleting unused baselines (#22497)
* Replacing addToProject() with addSqlObjectScripts() (#22489)
* checkpoint
* Fixing test
* Updating file scraper function to filter only to .sql files (no folders, no txt)
* changing var names to reflect that the lists only contain .sql scripts
---------
Co-authored-by: Kim Santiago <31145923+kisantia@users.noreply.github.com>
Co-authored-by: AkshayMata <akam520@gmail.com>
Co-authored-by: Cheena Malhotra <13396919+cheenamalhotra@users.noreply.github.com>
Co-authored-by: Charles Gagnon <chgagnon@microsoft.com>
Co-authored-by: Alex Ma <alma1@microsoft.com>
* add 'open in designer' to context menu of tables in sql projects
* fix tests
* Address comments
* enable table designer for sql database proj
* update label and issues on init
* vbump sts
* use promisified fs
* pr comments
Co-authored-by: Alan Ren <alanren@microsoft.com>
* Initial changes
* checkpoint
* Constructing project with post deployment script
* Correcting to intentionally read from cached list of projects
* Adding activation event, fixing fresh workspace bug
* Convert netcoreTool and autorestHelper to share a helper class for streamed command
* Include npm package version to force update
* test checkpoint
* Unit tests
* Added contextual quickpicks for autorest dialogs
* Adding projectController test
* Added projectController test, some refactoring for testability
* Merge branch 'main' into benjin/autorest
* Fixing 'which' import
* PR feedback
* Fixing tests
* Adding additional information for when project provider tests fail
* Hopefully fixing failing tests (unable to repro locally)
* Adding Generate Project item to workspace menu
* PR feedback
* initial quick pick
* move constants
* remove commented code for now
* addressing comments
* update name
* update name in other places
* remove azure functions from name and rename file
* expose addToProject in dataworkspace.d.ts
* remove changes in data workspace extension
* add sqldbproj.d.ts
* change list to be Uris instead of strings
* don't add files/folders if any don't exist
* fix test on windows
* Fix project context menu actions (#12541)
* delete works again
* make fewer changes
* update all sql db project commands
* cleanup
* Remove old projects view (#12563)
* remove old projects view from file explorer view
* fix tests failing
* remove projects in open folder opening up in old view
* Update db reference dialog to show projects in the workspace (#12580)
* update database reference dialog to show projects in the workspace in the project dropdown
* remove workspace stuff from sql projects extension
* undo change
* add class that implements IExtension
* undo a change
* update DataWorkspaceExtension to take workspaceService as a parameter
* add type
* Update sql database project commands (#12595)
* remove sql proj's open and create new project from comman palette
* hook up create project from database to data workspace
* rename the remaining import databases to create project from database
* remove open, new, and close commands
* expose addProjectsToWorkspace() in IExtension instead of calling command
* Addressing comments
* fix failing sql project tests (#12651)
* update SSDT projects opened in projects viewlet (#12669)
* fix action not refreshing the tree issue (#12692)
* fix adding project references in new projects viewlet (#12688)
* Remove old projects tree provider (#12702)
* Remove old projects tree provider and fix tests
* formatting
* update refreshProjectsTree() to accept workspaceTreeItem()
* Cleanup ProjectsController (#12718)
* remove openProject from ProjectController and some cleanup
* rename
* add project and open project dialogs (#12729)
* empty dialogs
* wip
* new project dialog implementation
* revert gitattributes
* open project dialog
* implement add project
* remove icon helper
* refactor
* revert script change
* adjust views
* more updates
* make data-workspace a builtin extension
* show the view only when project provider is detected (#12819)
* only show the view when proj provider is available
* update
* fix sql project tests after merge (#12793)
* Update dialogs to be closer to mockups (#12879)
* small UI changes to dialogs
* center radio card group text
* Create workspace if needed when opening/new project (#12930)
* empty dialogs
* wip
* new project dialog implementation
* revert gitattributes
* open project dialog
* implement add project
* remove icon helper
* refactor
* revert script change
* create workspace
* initial changes
* create new workspace working
* fix tests
* cleanup
* remove showWorkspaceRequiredNotification()
* Add test for no workspace open
* update blue buttons
* move loading temp project to activate() instead of workspaceService constructor
* move workspace creation warning message to before project is created
* pass uri to createWorkspace
* add tests
Co-authored-by: Alan Ren <alanren@microsoft.com>
* Additional create workspace changes (#13004)
* Dialogs workspace updates (#13010)
* adding workspace text boxes
* match new project dialog to mockups
* Add validation error message for workspace file
* add enterWorkspace api
* add warning message for opening workspace
* cleanup
* update commands to remove project so they're more generic
* remove 'empty' from string
* Move default project location setting to data workspace extension (#13022)
* remove project location setting and notification from sql database projects extension
* add default project location setting to data workspace extension
* fix typo
* Add back project name incrementing
* other merge fixes
* fix strings from other PR
* default to last opened directory instead of home directory if no specified default location
* A few small updates (#13092)
* fix build error
* update title for inputboxes
* add missing file
* Add tests for data workspace dialogs (#13324)
* add tests for dialogs
* create helper functions
* New project dialog workspace inputbox fixes (#13407)
* workspace inputbox fixes
* fix folder icons
* Update package.jsons and readme (#13451)
* update package.jsons
* update readme
* add workspace information to open existing dialog (#13455)
Co-authored-by: Alan Ren <alanren@microsoft.com>
* Added Tools Service call for ValidateStreamingJob
* Partial addition of ESJ
* adding test mocks
* Validation working
* Modifying command visibility logic to submatch ESJs in addition to files
* Changed string literal to constant, corrected attribute order
* Added tests
* correcting casing that's causing test failures on linux
* Swapping Thenable for Promise
* excluded validate from command palette
* Add quick pick to select target platform for a project
* add test
* show current target platform and info message for new target platform
* fix test failing
* add projects to add database reference dialog
* able to add project references
* check for circular dependency
* only allow adding reference to project in the same workspace
* fix location dropdown when project reference is enabled
* add tests
* more tests
* cleanup
* fix flakey test
* addressing comments
* work in progress
* load projects in view and test cases
* update scope
* make the sql proj menu available in workspace view
* add extension unit test
* address comments
* fix errors
* Initial changes for adding pre/post deploy script in project
* Right click > Add pre/post deploy script
* Print script files in tree
* Add new pre-post deploy items with their own tags and additional ones with None
* Add tests
* Fix error due to merge conflicts
* Addressed comments and fixed tests.
* Fix code scan error
* Addressed comments
* auto increment db proj name
* auto increment on import project from db
* adding separate message if workspace setting is invalid
* updating based on feedback
* adding do not ask again functionality
* moving constants
* making newprojecttool only top level functions
* adding tests
* updating to address merge conflicts
* fixing tests
* fixing tests
* Add images
* Splitting to light and dark mode icons
* Hooks up icons to treeItems
* updating package.json with new icon and vbump
* move icon loader before tree view created