Skip to content

Conversation

@allancascante
Copy link
Contributor

Description

Adding support to import/export/deploy/extract dacpac and bacpac files as it was possible in ADS.

  1. It allows to launch dacpac/bacpac import from OE or from command palette.
image
  1. Shows a form to select the operation to use (import/export/deploy/extract) the server database and file, respective to the selected operation.
image
  1. Performs the selected operation if all information is valid.
image

Code Changes Checklist

  • New or updated unit tests added
  • All existing tests pass (npm run test)
  • Code follows contributing guidelines
  • Telemetry/logging updated if relevant
  • No regressions or UX breakage

Reviewers: Please read our reviewer guidelines

@allancascante allancascante requested a review from Copilot October 21, 2025 18:25
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds comprehensive support for Data-Tier Application operations (import/export/deploy/extract dacpac and bacpac files), replicating functionality previously available in Azure Data Studio. The feature enables users to launch these operations from the Object Explorer or command palette through a webview interface that guides them through selecting the operation type, server connection, database, and file paths.

Key Changes:

  • New webview-based UI for managing dacpac/bacpac operations
  • Command registration for all four operation types (deploy, extract, import, export)
  • Validation logic for file paths, database names, and connections
  • Support for both new and existing database deployments with confirmation dialogs

Reviewed Changes

Copilot reviewed 18 out of 19 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/controllers/dataTierApplicationWebviewController.ts New controller managing webview RPC handlers for all data-tier operations
src/reactviews/pages/DataTierApplication/dataTierApplicationForm.tsx React form component implementing the UI for operation configuration
src/sharedInterfaces/dataTierApplication.ts TypeScript interfaces and RPC request/notification types
src/services/dacFxService.ts Updated to accept optional application name/version parameters
test/unit/dataTierApplicationWebviewController.test.ts Comprehensive unit tests covering all operation workflows
src/controllers/mainController.ts Command registration for data-tier application operations
package.json, package.nls.json Command definitions and localization keys
Localization files Translated strings for the new feature

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@github-actions
Copy link

github-actions bot commented Oct 23, 2025

PR Changes

Category Target Branch PR Branch Difference
Code Coverage 56.54% 57.09% ⚪ 0.00%
VSIX Size 4869 KB 4878 KB ⚪ 9 KB ( 0% )
Webview Bundle Size 4024 KB 4048 KB ⚪ 24 KB ( 0% )

@codecov-commenter
Copy link

codecov-commenter commented Oct 23, 2025

Codecov Report

❌ Patch coverage is 82.76762% with 66 lines in your changes missing coverage. Please review.
✅ Project coverage is 55.12%. Comparing base (8bb845a) to head (6056efd).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
src/controllers/mainController.ts 13.46% 45 Missing ⚠️
...ontrollers/dataTierApplicationWebviewController.ts 92.25% 20 Missing and 1 partial ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main   #20332      +/-   ##
==========================================
+ Coverage   54.51%   55.12%   +0.61%     
==========================================
  Files         200      202       +2     
  Lines       17321    17704     +383     
  Branches     1152     1235      +83     
==========================================
+ Hits         9443     9760     +317     
- Misses       7878     7943      +65     
- Partials        0        1       +1     
Files with missing lines Coverage Δ
src/constants/constants.ts 100.00% <100.00%> (ø)
src/constants/locConstants.ts 81.18% <100.00%> (+0.43%) ⬆️
src/services/dacFxService.ts 6.06% <ø> (ø)
src/sharedInterfaces/dataTierApplication.ts 100.00% <100.00%> (ø)
...ontrollers/dataTierApplicationWebviewController.ts 92.25% <92.25%> (ø)
src/controllers/mainController.ts 16.01% <13.46%> (-0.13%) ⬇️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants