On 01/12/12 16:28, Shawn Walker wrote:
On 12/22/11 17:46, Shawn Walker wrote:
This is a proposal (primarily) to change the output of pkg(1) when -v is
not used for package operations. When -v is not used, an 'update
summary' would be displayed instead at the install-hold level. It also
attempts to improve messaging in the 'No updates available' case.
...
A related problem that I'd also like to solve with this is to be able to
use better "rollup names" for the update summaries. The first draft of
this proposal improved on versions by leveraging the pkg.human-version
attribute (if present), but the names of what we're updating is
essentially meaningless to the user in many cases.
Incorporations were chosen as the rollup-level for updates as they
(approximately) represent "products" within the greater Solaris
ecosystem (and conveniently, boundaries of change of items likely to
depend on each other).
However, the pkg.summary and pkg.description for the incorporation
packages (such as 'entire', 'osnet-incorporation', etc.) necessarily
describe the *incorporation package* itself -- not the "product" (aka
consolidation) they represent. For example, entire's pkg.summary is
"Incorporation to lock all system packages to the same build". But from
a product perspective (when updating / installing), it's "Oracle Solaris".
If we had additional metadata to describe the products they represent,
then we could further improve the update summaries provided. Suggested
fields are pkg.product-name and pkg.product-summary. I'd also like to
suggest we have pkg.vendor to easily identify the company that produced
the package easily (e.g. set name=pkg.vendor value=Oracle).
In addition, I believe the update summary proposed so far can be further
simplified by focusing on the fact that it is not intended to provide
the level of detail that using -v does. With that in mind, some
information can be omitted if pkg.human-version and/or pkg.product-name
are provided further simplifying the output and substantially improving
readability.
Specifically, if pkg.human-version is provided, then the actual version
can be omitted from the summary. Likewise, if the pkg.product-name is
provided, then the actual package name can be omitted from the summary.
For example, these:
PACKAGE CHANGE SUMMARY
solaris
entire
Installed: FCS Build 2 (0.5.11-0.175.0.0.0.2.0)
Latest: SRU 2 Build 3 (0.5.11-0.175.0.2.0.3.0)
Proposed: SRU 1 Build 4 (0.5.11-0.175.0.1.0.4.0)
PACKAGE CHANGE SUMMARY
solaris
entire
Installed: FCS Build 2 (0.5.11-0.175.0.0.0.2.0)
Proposed (Latest): SRU 2 Build 3 (0.5.11-0.175.0.2.0.3.0)
...can be simplified to (assuming only one publisher offers the package):
PACKAGE CHANGE SUMMARY
Oracle Solaris
Package: entire
Installed: FCS Build 2
Latest: SRU 2 Build 3
Proposed: SRU 1 Build 4
PACKAGE CHANGE SUMMARY
Oracle Solaris
Package: entire
Installed: FCS Build 2
Proposed (Latest): SRU 2 Build 3
...if more than one publisher offers the package, the publisher name
would be shown in parentheses:
PACKAGE CHANGE SUMMARY
Oracle Solaris
Package: entire (solaris)
Installed: FCS Build 2
Latest: SRU 2 Build 3
Proposed: SRU 1 Build 4
...if the publisher of the package is changing as part of the operation:
PACKAGE CHANGE SUMMARY
Oracle Solaris
Package: entire (solaris -> wos-nightly)
Installed: FCS Build 2
Latest: SRU 2 Build 3
Proposed: SRU 1 Build 4
However, if the summary is being shown as the result of a failure to
find updates (due to constraints, as an example) or if the user
specified a version explicitly on the command line, full version
information would be shown as below:
PACKAGE CHANGE SUMMARY
Oracle Solaris
Package: entire (solaris)
Installed: FCS Build 2 (0.5.11-0.175.0.0.0.2.0)
Latest: SRU 2 Build 3 (0.5.11-0.175.0.2.0.3.0)
-Shawn
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss