maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Osipov (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (MNG-5977) Improve output readability of our MavenTransferListener implementations
Date Sat, 20 Feb 2016 20:01:18 GMT

     [ https://issues.apache.org/jira/browse/MNG-5977?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Michael Osipov updated MNG-5977:
--------------------------------
    Description: 
The current output of Downloading/Downladed/Uploading/Uploaded transfer notification has some
flaws:

1. It does not scale numbers between 1 and 1000 with appropriate units
2. It uses incorrect size ({{kB}}, {{MB}}, {{GB}} and time units ({{s}}) (see https://en.wikipedia.org/wiki/Binary_prefix
and https://en.wikipedia.org/wiki/Metric_prefix)
3. When Aether downloads in parallel (which applies for non-POM files) the progress interleaves
(e.g., race conditions to {{System.out}} and you do not know to which resource a progress
belongs.

Let's use an improved version of MPIR {{DependenciesRenderer}}'s [{{FileDecimalFormat}}|https://github.com/apache/maven-plugins/blob/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/dependencies/renderer/DependenciesRenderer.java#L1583]
for it.

concrete examples:
before
{noformat}191/191 KB   27/48 KB   48/119 KB   80/87 KB   13/13 KB   {noformat}
after:
{noformat}Progress (4): 500/800 B | 40/45 kB | 193 kB/315 kB | 1.3/9 MB | 12/30 MB{noformat}
if total size is unavailable or the file has already been downloaded but not removed from
the list, the output will be:
{noformat}Progress (4): 800 B | 40/45 kB | 193 kB | 9 MB | 12 MB{noformat}
or in debug mode:
{noformat}Progress (5): xml-apis-1.3.04.jar (<progress>) | maven-shared-utils-0.6.jar
(<progress>) | xercesImpl-2.9.1.jar (<progress>) | commons-digester-1.6.jar (<progress>)
| maven-reporting-impl-2.3.jar (<progress>){noformat}

If the scale will be between 1 and 10, one decimal position will be printed out. If it is
between 10 and 1000, it will be an integer.

  was:
The current output of Downloading/Downladed/Uploading/Uploaded transfer notification has some
flaws:

1. It does not scale numbers between 1 and 1000 with appropriate units
2. It uses incorrect size and time units (see https://en.wikipedia.org/wiki/Binary_prefix
)
3. When Aether downloads in parallel (which applies for non-POM files) the progress interleaves
and you do not know to which resource a progress belongs.

Let's use MPIR {{DependenciesRenderer}}'s [{{FileDecimalFormat}}|https://github.com/apache/maven-plugins/blob/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/dependencies/renderer/DependenciesRenderer.java#L1583]
for it.

concrete examples:
before
{noformat}191/191 KB   27/48 KB   48/119 KB   80/87 KB   13/13 KB   {noformat}
after:
{noformat}Progress (2): 39.5 kB/45 kB | 192.5 kB/314.9 kB{noformat}
or in debug mode:
{noformat}Progress (5): xml-apis-1.3.04.jar (36.9 kB/194.4 kB) | maven-shared-utils-0.6.jar
(32.8 kB/164.6 kB) | xercesImpl-2.9.1.jar (179.5 kB/1.2 MB) | commons-digester-1.6.jar (76.3
kB/168.4 kB) | maven-reporting-impl-2.3.jar (18 kB){noformat}


> Improve output readability of our MavenTransferListener implementations
> -----------------------------------------------------------------------
>
>                 Key: MNG-5977
>                 URL: https://issues.apache.org/jira/browse/MNG-5977
>             Project: Maven
>          Issue Type: Improvement
>          Components: Command Line, Embedding
>    Affects Versions: 3.3.9
>            Reporter: Michael Osipov
>            Assignee: Michael Osipov
>             Fix For: 3.4.0
>
>         Attachments: MNG-5977-w-filename.patch, MNG-5977.patch, current.zip, improved.zip,
improved.zip
>
>
> The current output of Downloading/Downladed/Uploading/Uploaded transfer notification
has some flaws:
> 1. It does not scale numbers between 1 and 1000 with appropriate units
> 2. It uses incorrect size ({{kB}}, {{MB}}, {{GB}} and time units ({{s}}) (see https://en.wikipedia.org/wiki/Binary_prefix
and https://en.wikipedia.org/wiki/Metric_prefix)
> 3. When Aether downloads in parallel (which applies for non-POM files) the progress interleaves
(e.g., race conditions to {{System.out}} and you do not know to which resource a progress
belongs.
> Let's use an improved version of MPIR {{DependenciesRenderer}}'s [{{FileDecimalFormat}}|https://github.com/apache/maven-plugins/blob/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/dependencies/renderer/DependenciesRenderer.java#L1583]
for it.
> concrete examples:
> before
> {noformat}191/191 KB   27/48 KB   48/119 KB   80/87 KB   13/13 KB   {noformat}
> after:
> {noformat}Progress (4): 500/800 B | 40/45 kB | 193 kB/315 kB | 1.3/9 MB | 12/30 MB{noformat}
> if total size is unavailable or the file has already been downloaded but not removed
from the list, the output will be:
> {noformat}Progress (4): 800 B | 40/45 kB | 193 kB | 9 MB | 12 MB{noformat}
> or in debug mode:
> {noformat}Progress (5): xml-apis-1.3.04.jar (<progress>) | maven-shared-utils-0.6.jar
(<progress>) | xercesImpl-2.9.1.jar (<progress>) | commons-digester-1.6.jar (<progress>)
| maven-reporting-impl-2.3.jar (<progress>){noformat}
> If the scale will be between 1 and 10, one decimal position will be printed out. If it
is between 10 and 1000, it will be an integer.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message