[Improvement]: Decouple in-built bal tools from the distribution #43838
Labels
Area/ProjectAPI
Priority/High
Team/DevTools
Ballerina Developer Tooling ( CLI, Test FW, Package Management, OpenAPI, APIDocs )
Type/Improvement
Description
Currently, the most commonly used bal tools (bal openapi, bal graphql, bal grpc, bal persist) are packaged in the distribution. Due to this, we cannot issue bug fixes and improvements to the tools without releasing a ballerina distribution. Decoupling the tools from the distribution will make the delivery of features/fixes fast.
Describe your problem(s)
Ballerina's support for the above features includes CLI tools, package-provided compiler-plugins, and also VSCode features. The Java dependencies required for the CLI tool and VSCode features are shipped in the
<distribution>/bre/lib
directory and some of these are also used in compiler plugins. Therefore, a distribution release is required when there is a requirement to update a tool or a compiler plugin.Describe your solution(s)
A plugin architecture must be designed to remove the IDL-specific Java dependencies from the distribution. CLI tools, compiler plugins and VSCode extensions must be decoupled from the distribution. The owners must be able to independently release and maintain these individually.
Related area
-> Compilation
The text was updated successfully, but these errors were encountered: