Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Idea: Improve Scrapbook Experience by Integrating MongoDB Shell Execution #2553

Open
tnaum-ms opened this issue Jan 30, 2025 · 0 comments
Open

Comments

@tnaum-ms
Copy link
Collaborator

The Scrapbook feature currently requires an external mongosh executable to be installed on the user's machine. This approach can lead to issues when the expected version and the installed version of the shell do not match, causing inconsistencies and unexpected behavior. Instead of relying on an external dependency, we could integrate shell execution directly into the extension using the @mongosh/service-provider-core package.

By embedding MongoDB shell execution within the extension, we can eliminate version mismatches and improve reliability while maintaining feature parity with existing shell-based execution.

Additionally, while this work focuses on improving the Scrapbook experience, deeper MongoDB shell integration could be explored in the future for interactive workflows within the extension. This could involve a fully integrated shell experience for live command execution, but such functionality would be part of a separate follow-up effort and is not within the scope of this task.

Proposed Approach:

  • Use @mongosh/service-provider-core to handle script execution within the extension itself.
  • Manage the MongoDB shell internally, removing the need for users to install mongosh separately.
  • Ensure feature parity with existing shell-based execution while improving reliability and usability.

Benefits:

  • Improved User Experience: No need for users to configure an external executable.
  • Cross-Platform Consistency: Works seamlessly regardless of the user’s environment.
  • Eliminates Version Mismatch Issues: Ensures the expected MongoDB shell version is always used.

Considerations:

  • Evaluate performance and memory overhead when running the shell inside the extension.
  • Ensure compatibility with different MongoDB versions and configurations.
  • Provide an option to fall back to an external mongosh executable if needed.

This enhancement will improve the Scrapbook experience while laying the groundwork for potential future enhancements to MongoDB shell integration.

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

No branches or pull requests

1 participant