-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Description
I have checked the following:
- I've searched existing issues and found nothing related to my issue.
This feature
- blocks me from using Bruno
- would improve my quality of life in Bruno
- is something I've never seen an API client do before
Describe the feature you want to add, and how it would change your usage of Bruno
Feature Request: Multiple proto
Import Paths for gRPC
Problem Description
When working with gRPC APIs, .proto
files often have dependencies on files located in different directories. The standard protoc
command-line tool handles this with the -I
or --proto_path
flag, which allows for specifying multiple import paths.
Currently, Bruno does not appear to support this functionality. This makes it impossible to import .proto
files with dependencies that are outside of the current directory. This effectively prevents users from working with gRPC projects where .proto
files are not located in a single, centralized folder. Other popular tools like Postman already support this feature, which many developers consider a standard, basic functionality.
Proposed Solution
I propose expanding Bruno's gRPC functionality to allow users to define multiple import paths for .proto
files. These paths should be configurable either within the settings of a gRPC request or at the project/collection level.
Benefits
- Improved Compatibility: Bruno would better support the standard
protoc
conventions, making integration with existing projects much smoother. - Greater Flexibility: Users would be able to manage complex project structures with distributed
.proto
files more effectively, without having to create redundant copies. - Enhanced User Experience: It would remove the need to manually copy all
.proto
files into a single directory, which can lead to redundant files and errors.
Example Implementation
The user interface could provide a simple way to add a list of directory paths. The configuration could look like this in the bruno.json
file:
{
"grpc": {
"protoPaths": [
"/path/to/my/protos",
"/path/to/my/common/protos",
"/path/to/my/vendor/protos"
]
}
}
Mockups or Images of the feature
No response