Skip to content

Conversation

@tnaum-ms
Copy link
Collaborator

@tnaum-ms tnaum-ms commented Dec 11, 2025

💠 Improved Azure Tenant and Subscription Filtering in Service Discovery (#391, #415)

We've resolved a key issue that affected users managing numerous Azure tenants. Previously, when a user had access to a large number of tenants, and had selected all of them, the filtering wizard would fail to work correctly when attempting to deselect tenants, making it impossible to refine the resource view.

This update introduces an improved filtering mechanism that ensures a reliable experience, even for users in enterprise environments. The wizard for managing accounts, tenants, and subscriptions is now more resilient, allowing you to precisely control which resources are displayed in the Service Discovery panel.

For a complete guide on the enhanced workflow, please see our updated documentation on Managing Azure Discovery.

💠 Corrected Service Discovery Default Settings (#390, #412)

To provide a cleaner initial experience, the Service Discovery feature no longer starts with any discovery engines enabled by default. In a previous version, the "Azure Cosmos DB for MongoDB (RU)" plugin was pre-selected by mistake, which could cause confusion.

With this fix, you now have full control over which service discovery plugins are active from the start, for a more intentional and direct setup.

💠 Accessibility Fix for Query Insights (#376, #416)

We've addressed an accessibility issue in the "Query Insights" tab where the "AI response may be inaccurate" warning text would overlap with other UI elements when the panel was resized. The layout has been updated to be fully responsive, ensuring all content remains readable and accessible regardless of panel size.

💠 Modernized Architecture with Major Dependency Upgrades (#406, #407, #386)

This release includes a significant overhaul of our dev dependencies, bringing major performance and modernization improvements:

  • Upgraded to React 19: We've migrated our webview components to React 19, leveraging the latest features and performance enhancements from the React team.
  • Upgraded to SlickGrid 9: The data grids used to display collection data have been updated to SlickGrid 9. This major update improves rendering performance and aligns with modern JavaScript standards.
  • Other Key Updates: We've also updated TypeScript, Webpack, the MongoDB driver, and numerous other packages to enhance security, stability, and build performance.

These upgrades ensure the extension remains fast, secure, and aligned with the latest web development best practices.


This pull request introduces several important improvements and fixes to the project, focusing on enhanced documentation workflows, developer environment setup, dependency upgrades, and user experience fixes. The most significant changes are the addition of robust GitHub Pages deployment workflows for both production and PR previews, a new devcontainer configuration for Node.js development, and updates to the changelog and dependencies.

Documentation Deployment Workflows:

  • Added deploy-documentation-production.yml to automate deployment of production documentation to the gh-pages branch, preserving PR previews and supporting both automatic and manual triggers.
  • Added deploy-documentation-preview.yml to enable manual deployment and cleanup of PR documentation previews, including support for generating, cleaning individual previews, and cleaning all previews.
  • Introduced a comprehensive GITHUB_PAGES_WORKFLOW_README.md explaining the two-workflow architecture, usage, triggers, and maintenance for documentation deployments.

Developer Environment Setup:

  • Added .devcontainer/devcontainer.json for a Node.js 20 development environment, including lifecycle commands, VS Code extension recommendations, and node_modules caching to improve onboarding and development consistency.

Project Maintenance and Upgrades:

  • Updated CHANGELOG.md with details of bug fixes (tenant filtering, service discovery defaults, accessibility in Query Insights) and major dependency upgrades (React 19, SlickGrid 9, TypeScript, Webpack, and more).
  • Upgraded dependencies in api/package-lock.json, including new packages for improved compatibility and security.

Documentation and Wizard Implementation Guidance:

  • Added detailed instructions to .github/copilot-instructions.md for handling wizard back navigation and context persistence, ensuring robust step implementation in the AzureWizard framework.

tnaum-ms and others added 30 commits November 21, 2025 11:36
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.1 to 3.14.2.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](nodeca/js-yaml@3.14.1...3.14.2)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 3.14.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [glob](https://github.com/isaacs/node-glob) from 11.0.2 to 11.1.0.
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](isaacs/node-glob@v11.0.2...v11.1.0)

---
updated-dependencies:
- dependency-name: glob
  dependency-version: 11.1.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: tnaum-ms <171359267+tnaum-ms@users.noreply.github.com>
…rent

Co-authored-by: tnaum-ms <171359267+tnaum-ms@users.noreply.github.com>
Co-authored-by: tnaum-ms <171359267+tnaum-ms@users.noreply.github.com>
- Update additional dev dependencies (@eslint/js, @swc/core, jest, mocha, sass, etc.)
- Update runtime dependencies (bson v7, mongodb v7, Azure SDKs, trpc, etc.)
- Migrate SlickGrid from v5 to v9 (ESM-only, new prop names)
- Update glob to v12 and add dompurify override for security
- Fix SlickGrid v9 breaking changes (gridOptions→options, columnDefinitions→columns)
- Update MIGRATION-SUMMARY.md with complete details including SlickGrid v9 migration

Co-authored-by: tnaum-ms <171359267+tnaum-ms@users.noreply.github.com>
Co-authored-by: tnaum-ms <171359267+tnaum-ms@users.noreply.github.com>
- Remove forwardRef wrapper from all components
- Convert forwardRef components to regular functions with ref as prop
- Update InputWithHistory, InputWithProgress, and all card components
- Update TipsCard, AiCard, ImprovementCard, MarkdownCard, MarkdownCardEx
- Update GetPerformanceInsightsCard and StageDetailCard
- All components now use ref as a prop per React 19 guidelines
- Remove displayName assignments (no longer needed)
- All tests pass (147 tests)

Co-authored-by: tnaum-ms <171359267+tnaum-ms@users.noreply.github.com>
…erfaces

- Remove custom IThemedIconPath and IThemedIconURI interfaces
- Import Uri from 'vscode' instead of using vscode-uri package
- Update getThemedIconPath to return { light: Uri; dark: Uri }
- Update getThemeAgnosticIconPath to return Uri
- Rename getIconURI to getIconPath for consistency
- Use Uri.file() for all icon paths instead of plain strings
- Update all icon path usages across the codebase
- Update LocalEmulatorsItem, SelectClusterStep, DocumentDBResourceItem, VCoreResourceItem, AuthMethod
- All builds and tests pass (147 tests)

Co-authored-by: tnaum-ms <171359267+tnaum-ms@users.noreply.github.com>
… supposed to start with an empty list on fresh installs). Added tests.
- Update @types/vscode from 1.90.0 to ~1.96.0 (matches vscode-cosmosdb)
- Update vscode engine requirement to ^1.96.0
- Import { type IconPath } from 'vscode' in constants.ts and related files
- Use IconPath type instead of inline type definitions
- Update ClusterItemBase to use IconPath instead of verbose union type
- Add convertIconPath helper in createGenericElementWithContext for compatibility with TreeItemIconPath
- Update LocalEmulatorsItem to use IconPath type
- All builds and tests pass (147 tests)

Co-authored-by: tnaum-ms <171359267+tnaum-ms@users.noreply.github.com>
remove dependency

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
vscode dependency slipped into the language server (via constants.ts)
tnaum-ms and others added 4 commits December 11, 2025 12:22
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings December 11, 2025 11:32
@tnaum-ms tnaum-ms requested a review from a team as a code owner December 11, 2025 11:32
Copy link
Contributor

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 is a release preparation PR (version 0.6.2) that includes major dependency updates (React 18→19, MongoDB driver 6→7, slickgrid-react 5→9), React component refactoring (removing forwardRef pattern), new telemetry utilities, and enhanced Azure tenant management flows.

Key Changes

  • Dependency Modernization: Updated to React 19, MongoDB 7, and latest versions of FluentUI and other core dependencies
  • React Component Refactoring: Removed forwardRef pattern across multiple components in favor of ref as props
  • Telemetry Enhancement: Added journey correlation tracking for discovery flows and command telemetry utilities
  • Azure Tenant Management: Improved tenant sign-in flow with per-tenant authentication and better filtering behavior

Reviewed changes

Copilot reviewed 70 out of 72 changed files in this pull request and generated no comments.

Show a summary per file
File Description
package.json Version bump to 0.6.2-alpha, major dependency updates including React 19, MongoDB 7, slickgrid-react 9
webpack.config.views.js Removed middleware workaround (likely fixed in updated webpack-dev-server)
src/utils/icons.ts New utility consolidating icon path helpers from constants.ts
src/utils/commandTelemetry.ts New utility for tracking journey correlation IDs in telemetry
src/tree/documentdb/ClusterItemBase.ts Added journeyCorrelationId property for telemetry tracking
src/webviews/components/*.tsx Refactored React components to remove forwardRef pattern
src/plugins/*/config.ts Extracted configuration constants to dedicated files
src/plugins/api-shared/azure/credentialsManagement/* Enhanced tenant management with per-tenant sign-in flow
src/tree/discovery-view/DiscoveryBranchDataProvider.test.ts Comprehensive test coverage for discovery provider promotion logic
docs/user-manual/managing-azure-discovery.md Updated documentation reflecting new tenant management flow
Files not reviewed (1)
  • api/package-lock.json: Language not supported

@microsoft microsoft deleted a comment from github-actions bot Dec 11, 2025
@github-actions
Copy link
Contributor

🚀 Documentation Preview Deployed

Your documentation preview has been manually deployed and will be available shortly at:

🌐 https://microsoft.github.io/vscode-documentdb/pr-preview/pr-418/

To update the preview, trigger this workflow again with the same PR number.


🔍 Monitor deployment:

Preview deployed to branch gh-pages by @tnaum-ms

Copy link
Contributor

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

Copilot reviewed 75 out of 77 changed files in this pull request and generated 2 comments.

Files not reviewed (1)
  • api/package-lock.json: Language not supported

- **`actions/checkout@v4`** - Checks out repository code
- **`actions/github-script@v7`** - Fetches PR details via GitHub API
- **`JamesIves/github-pages-deploy-action@v4`** - Handles git operations and deployment
- **`marocchino/sticky-pull-request-comment@v2`** - Posts/updates PR comments
Copy link

Copilot AI Dec 11, 2025

Choose a reason for hiding this comment

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

This guide recommends using the third-party action marocchino/sticky-pull-request-comment@v2 pinned only to a mutable tag while granting it pull-requests: write and GITHUB_TOKEN, which introduces supply chain risk in the associated workflows. A hijacked or malicious version of this action could run arbitrary code in your CI context, abuse the token, or tamper with PR metadata. Mitigate this by pinning the action to a specific trusted commit SHA in the workflows and updating this documentation to reflect the immutable reference.

Suggested change
- **`marocchino/sticky-pull-request-comment@v2`** - Posts/updates PR comments
- **`marocchino/sticky-pull-request-comment@b2c7c6e2e0e6e6e2c1b2e2e6e2c1b2e2e6e2c1b2`** - Posts/updates PR comments <br>
<sub>**Security Note:** Always pin third-party actions to a specific commit SHA to prevent supply chain attacks. Replace the SHA with the latest trusted commit from [marocchino/sticky-pull-request-comment](https://github.com/marocchino/sticky-pull-request-comment/commits/v2) as needed.</sub>

Copilot uses AI. Check for mistakes.
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

good catch.

@ other reviewers: this was an experiment has has been dropped, the readme file is an artifact that we forgot to delete

@tnaum-ms tnaum-ms merged commit 1e0c2fc into main Dec 12, 2025
16 checks passed
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