On Tue, 28 Apr 2026 01:37:54 GMT, Alexander Matveev <[email protected]> 
wrote:

>> Provide finer control over the jpackage console output.
>> 
>> Add an optional value to the `--verbose` option. The description of the 
>> option has changed from:
>> 
>> --verbose
>>           Enables verbose output
>> 
>> to
>> 
>>   --verbose [<[-]category(,[-]category)*>]
>>           Configures verbose output. Where "category" is one of
>>               "all"
>>               "console"
>>               "log"
>>               "errors"
>>               "progress"
>>               "resources"
>>               "summary"
>>               "tools"
>>               "trace"
>>               "warnings"
>> 
>>           Suppress all console output, enable logging via System.Logger API:
>>               --verbose log
>>           Enable all message categories in the console:
>>               --verbose console
>>           Enable all message categories, but "trace" and "tools" in the 
>> console:
>>               --verbose console,-trace,-tools
>>           Enable "trace" and "tools" message categories in the console:
>>               --verbose trace,tools
>>           Enable "trace" and "tools" message categories in the console and
>>           enable logging via System.Logger API:
>>               --verbose log,trace,tools
>> 
>>           If the option is specified without the value, it is equivalent to
>>               --verbose console,-trace
>>           If the option is not specified it is equivalent to
>>               --verbose errors,warnings
>> 
>> 
>> Message categories explained in 
>> [JDK-8377120](https://bugs.openjdk.org/browse/JDK-8377120) CSR.
>> 
>> - [x] I confirm that I make this contribution in accordance with the 
>> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai).
>
> src/jdk.jpackage/linux/classes/jdk/jpackage/internal/LinuxDebPackager.java 
> line 153:
> 
>> 151:         List<String> cmdline = new ArrayList<>();
>> 152:         Stream.of(sysEnv.fakeroot(), 
>> sysEnv.dpkgdeb()).map(Path::toString).forEach(cmdline::add);
>> 153:         cmdline.add("--verbose");
> 
> Why we adding it always vs only if verbose was enabled?

It is always on because there is no boolean "verbose" property any longer.

> src/jdk.jpackage/linux/classes/jdk/jpackage/internal/LinuxPackager.java line 
> 166:
> 
>> 164:         try {
>> 165:             errors = findErrorsInOutputPackage();
>> 166:         } catch (IOException ex) {
> 
> Do we really want to ignore only `IOException`? It used to be just 
> `Exception`. Can you document why `IOException` is not critical, but any 
> other potential exceptions are critical.

The signature of the `findErrorsInOutputPackage()` is `protected List<? extends 
Exception> findErrorsInOutputPackage() throws IOException`. Expected exception 
type is `IOException`. If it throws any other exception, like NPE, it indicates 
an internal jpackage error and should make it crash.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/29515#discussion_r3157172499
PR Review Comment: https://git.openjdk.org/jdk/pull/29515#discussion_r3157149921

Reply via email to