Hi, Did you already do the work to list what it implies? For instance I know interactive mode can be needed on these platforms (for debug purposes mainly), that travis requires more work for logs (size + timeout "ping" log to not have the job killed) etc... So wonder what is the overlap (if it is just -B it is not worth to be extreme) and if we have that status. A small alternative which is interesting is to not enable/disable anything but log it is likely desired: "you are running on X, you should probably set -X1 -X2, or -no-X1 -noX2 if you dont want this message to show again".
Romain Manni-Bucau @rmannibucau <https://twitter.com/rmannibucau> | Blog <https://rmannibucau.metawerx.net/> | Old Blog <http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> | LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book <https://www.packtpub.com/application-development/java-ee-8-high-performance> Le dim. 12 juil. 2020 à 19:41, Michael Osipov <[email protected]> a écrit : > Am 2020-07-12 um 17:42 schrieb Martin Kanters: > > Hi all, > > > > When setting up GitHub Actions for Maven (core) two weeks ago, I > initially > > forgot to enable the -B/--batch-mode flag. > > While this gave no issues and was easy to fix, it could be avoided by > > detecting if Maven is executed on popular CI environments and in that > case > > automatically enabling batch mode. > > Popular CI tools such as GitHub Actions [1] and GitLab CI [2] provide > > predefined environment variables, which could be used for this purpose. > > When this would automatically activate, we log this on INFO level. We > would > > also need an option to turn batch-mode off to override this automatic > > behavior. > > > > The reason why I haven't created a JIRA issue yet is because I realize I > do > > not know if this fits the usual workings for Maven. > > Based on best guesses (de-)activating certain functionality can in my > > vision be a quality-of-life improvement for our users. > > On the other hand I have the feeling currently Maven does favor users to > > explicitly set their CLI flags. > > Just wanted to know your opinion. If I get positive feedback I will > create > > a JIRA issue. > > Otherwise we can consider alternatives (only log a hint: "CI run > detected, > > did you want to run in --batch-mode?") or leave it like it is. > > So, I consider explicitly adding zillions of CI support is the wrong way > to go. We need to be agnostic just like we are IDE-agnostic. > What you are basically looking for is just like in Subversion: > > --non-interactive : do no interactive prompting (default is to > prompt > > only if standard input is a terminal device) > > --force-interactive : do interactive prompting even if standard > input > > is not a terminal device > > by default Subversion will try to determine both. You need native code > here to determine whether stdout/stdin is attached to a terminal. There > you will have your auto detection. Java's Console is supposed to do > this, but is is too limited. > Luckily, we do have Jansi in tree which provides use with: > POSIX: > > https://github.com/fusesource/jansi-native/blob/master/src/main/java/org/fusesource/jansi/internal/CLibrary.java#L74-L76 > Windows: > > https://github.com/fusesource/jansi-native/blob/master/src/main/java/org/fusesource/jansi/internal/WindowsSupport.java#L49-L57 > > This is what you are looking for. > > Michael > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > >
