MonkeyCanCode commented on PR #2027:
URL: https://github.com/apache/polaris/pull/2027#issuecomment-3090915251

   > The makefile itself looks good -- I also think the addition to the README 
is helpful context.
   > 
   > I do wonder how many build systems we want to end up with -- we _could_ do 
the same thing with a shell script launched from gradle, for example.
   > 
   > IMO the convenience we gain here is worth it, but perhaps we should update 
other docs to actually point users at the makefile, such as the getting-started 
docs.
   > 
   > @HonahX may also have thoughts on our growing use of `make`.
   
   IMO, a Makefile acts as a smart central organizer, which is often better 
than relying only on Gradle or separate Bash scripts. While Gradle is great for 
Java development, it gets complicated when you try to make it do everything, 
like building Python packages or deploying Helm charts (do-able via some 
thrid-party plugins which may get EOL at any time or using plain CMD plugin 
then handle various stdout/stderr parsing etc). Doing these external tasks 
directly in Gradle may lead to complex and hard-to-manage code in Gradle. Also, 
if parts of the project, like Helm charts, move to their own separate 
locations, a custom Gradle setup for those parts would have to be copied or 
redone. A Makefile, being more general, makes automation flexible and reusable.
   
   We could do many things with a Bash script. But Makefiles offer built-in 
features that Bash doesn't easily provide, like handling task dependencies and 
running tasks at the same time with parallel execution. Recreating these in a 
Bash script for a big project would be a lot of extra work.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@polaris.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to